我有一个数据帧列表,看起来像图像中所示。
列表长度为200,其中有200个数据帧,每个数据帧的长度为205,有6列。
我想将此列表显示为形状数组(200,205,6)
我尝试了以下方法,但仍然出现以下错误。
np.array(samples).reshape(200,205,6)
对于此代码,我得到一个错误:
ValueError:无法将大小为205的序列复制到尺寸为1的数组轴上
我还删除了5列,并在所有数据集中仅保留了一列,但是却出现了相同的错误。
有什么方法可以使它呈所需的形状。enter image description here
答案 0 :(得分:0)
由于numpy不知道如何将熊猫数据框转换为np.array,因此出现了此错误,但是您可以很快解决:
np.array([df.values for for df in list_of_dataframes])
我尝试了以下示例数据:
data = [pd.DataFrame(np.random.random((205,6))) for i in range(200)]
np.array([df.values for df in data]).shape
(200,205,6)
PS:可能是以下项目的副本: Convert pandas dataframe to NumPy array