正如标题所说,我有一个名为"list"的列表,它包含多个Dataframe(形状为120x120),其中包含一些数字数据,这些数据是从以前的列表中添加的。
...
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)
假设"list"包含800个 Dataframe ,因此该列表的每个索引都包含一个 Dataframe 。
1.创建一个长度与"list"相同的数组
1.获取"list"中的每个 Dataframe ,一个接一个,将其转换为Numpy数组(120 x 120,因此是一个矩阵)
1.将每个Numpy数组(120 x 120)添加到创建的数组(800)中。
所以我想得到一个数组(长度为800,与list相同),其中每个索引包含一个800 Numpy数组(矩阵)。
我已经使用. to_numpy()函数通过for循环应用于列表,
for i in range(len(list)):
list[i] = list[i].to_numpy()
但它会生成一个奇怪的结构,比如 * an array of array of array *,其中第二个仅包含一个元素,即转换为数组的 Dataframe :
>>> 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.],
...,
我该怎么做呢?
1条答案
按热度按时间jgzswidk1#
你的思路是对的,如果你在结果列表中调用
np.array
,它将创建一个形状为(800, 120, 120)
的大型数组,下面是一个使用列表解析而不是for循环的例子: