Python:2维形状的数组(11024)被读取为3维数组

Python:2维形状的数组(11024)被读取为3维数组,python,arrays,scikit-learn,Python,Arrays,Scikit Learn,在python中,我有一个数组列表a,每个数组的形状为(1,1024)和一个int的列表b{1,0,0,1…] 现在我想用它来训练一个基本的SVM。 我始终收到此错误消息: ValueError: Found array with dim 3. Estimator expected <= 2. 数组的前10项: [array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.03608917, 0.06382023, 0

在python中,我有一个数组列表a,每个数组的形状为(1,1024)和一个int的列表b{1,0,0,1…] 现在我想用它来训练一个基本的SVM。 我始终收到此错误消息:

ValueError: Found array with dim 3. Estimator expected <= 2.
数组的前10项:

[array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.03608917,
         0.06382023,  0.02493868]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.00363029,
         0.04429551,  0.04517733]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.01848865,
         0.03857033, -0.04184096]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.00812042,
        -0.01121382, -0.07293765]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ...,  0.0026521 ,
        -0.00911874,  0.02558753]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ...,  0.0128456 ,
        -0.00659914, -0.05465406]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.00801555,
        -0.06554729, -0.04112517]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ...,  0.0015485 ,
        -0.03974668,  0.03871798]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ...,  0.03571296,
         0.0097717 , -0.02939025]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.00178309,
        -0.00751928, -0.00501447]], dtype=float32)]
这样想吧:

要在这里选择单个元素,您需要3件事:列表中的位置、n in(n,1024)和k in(1,k)。这是一个三维数据结构

使用
np.stack
或使用
np.array
np.restrape(len(list),1024)
转换列表。这样,您将拥有一个独特的形状数组(n,1024)。

请这样想:

要在这里选择单个元素,您需要3件事:列表中的位置、n in(n,1024)和k in(1,k)。这是一个三维数据结构

使用
np.stack
或使用
np.array
np.resporate(len(list),1024)
转换你的列表。这样你将拥有一个独特的形状数组(n,1024)。

用(n行,n dims)重塑你的数组,并使用数组而不是列表,使用scikit学习估计器,它们的性能会更好(n_行,n_dims),并且选择数组而不是列表,使用scikit学习估计器,它们的性能往往更好。
[array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.03608917,
         0.06382023,  0.02493868]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.00363029,
         0.04429551,  0.04517733]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.01848865,
         0.03857033, -0.04184096]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.00812042,
        -0.01121382, -0.07293765]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ...,  0.0026521 ,
        -0.00911874,  0.02558753]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ...,  0.0128456 ,
        -0.00659914, -0.05465406]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.00801555,
        -0.06554729, -0.04112517]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ...,  0.0015485 ,
        -0.03974668,  0.03871798]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ...,  0.03571296,
         0.0097717 , -0.02939025]], dtype=float32), array([[-0.00381735, -0.02317988, -0.06664753, ..., -0.00178309,
        -0.00751928, -0.00501447]], dtype=float32)]