【发布时间】:2023-01-13 19:24:30
【问题描述】:
正如标题所说,我有一个名为“list”的列表,其中包含多个 Dataframes(形状 120 x 120)和一些数字数据,是从之前的列表中添加的。
...
df_sum = list_dataframe[0]
for i in range (1, len(list_dataframe)):
df_sum = df_sum.add(list_dataframe[i])
list.append(df_sum)
假设“列表”包含 800 个数据帧,因此此列表的每个索引都包含一个数据帧。我想要:
- 创建一个与“列表”长度相同的数组
- 获取“列表”中的每个数据帧,一个接一个,将其转换为 Numpy 数组(120 x 120,因此是一个矩阵)
- 将每个 Numpy 数组 (120 x 120) 添加到创建的数组 (800) 中。
所以我想获得一个数组(长度为 800,与列表相同),其中每个索引都包含 800 个 Numpy 数组(矩阵)之一。
我已经使用 .to_numpy() 函数应用于带有 for 循环的列表,
for i in range(len(list)): list[i] = list[i].to_numpy()但它会产生一个奇怪的结构,比如数组数组的数组其中第二个仅包含一个元素,即转换为数组的数据帧:
>>> list >>>[array([[0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.], ..., [0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.]]), array([[0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.], ...,我怎样才能做到这一点?
【问题讨论】:
标签: python arrays pandas dataframe numpy