【问题标题】:How to convert the list of Dataframes in this required shape of array?如何以这种所需的数组形状转换数据框列表?
【发布时间】:2019-06-25 14:41:25
【问题描述】:

我有一个数据框列表,如图所示。

列表长度为 200,其中有 200 个数据帧,每个数据帧的长度为 205,有 6 列。

我想把这个列表放入形状数组 (200,205,6)

我尝试了以下方法,但我不断收到下面给出的错误。

np.array(samples).reshape(200,205,6)

对于这段代码,我收到了一个错误:

ValueError: 无法将大小为 205 的序列复制到维度为 1 的数组轴

我还删除了 5 列,在所有数据帧中只保留了 1 列,但出现了同样的错误。

有什么办法可以把它变成所需的形状..enter image description here

【问题讨论】:

  • 仍然不太清楚你想做什么 - 你想获取数据帧中的所有值并从数据帧创建一个嵌套数组吗?

标签: python numpy dataframe


【解决方案1】:

您收到该错误是因为 numpy 不知道如何将 pandas 数据帧转换为 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

【讨论】:

    猜你喜欢
    • 2021-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-16
    • 1970-01-01
    • 1970-01-01
    • 2020-11-23
    • 2022-06-28
    相关资源
    最近更新 更多