Python Numpy矩阵不平坦
我正在尝试将Numpy阵列展平,但展平、拉威尔和hstack没有这样做。我需要能够从阵列中创建熊猫系列,但我似乎无法让熊猫接受:Python Numpy矩阵不平坦,python,pandas,numpy,matrix,Python,Pandas,Numpy,Matrix,我正在尝试将Numpy阵列展平,但展平、拉威尔和hstack没有这样做。我需要能够从阵列中创建熊猫系列,但我似乎无法让熊猫接受: print(type(centroids)) # <class 'numpy.matrix'> print(centroids.shape) # (5, 9328) centroid = centroids[i] centroid = np.hstack(centroid) print(centroid) # [[ 0.98487911 0.748
print(type(centroids))
# <class 'numpy.matrix'>
print(centroids.shape)
# (5, 9328)
centroid = centroids[i]
centroid = np.hstack(centroid)
print(centroid)
# [[ 0.98487911 0.7483803 11.80978353 ... 0.97687837 0.21988038
3.33842549]] <-- still enclosed by two brackets
print(centroid.shape)
# (1, 9328)
centroid = pd.Series(centroid, name='value') <-- throws exception: Exception: Data must be 1-dimensional
问题在于质心是np矩阵,而不是数组。如果您只需将最后一行更改为:
centroid = pd.Series(np.array(centroid).ravel(), name='value')
这回答了你的问题吗?pd.Seriescentroid[0],name='value'centroid=centroids[i]就足够了。@KevinWelch不幸的是没有,我试过了,但没有成功。即使是这样,我也在寻找一种基于矩阵的方法……而不是迭代的方法。不过谢谢。请提供一个。