我有50个具有一个结构的数据帧,但值不同。如何从这一切中获得平均数据框架?
active nodes
graph
0 128
1 128
2 128
3 127
4 126
5 126
6 126
7 126
8 126
9 125
10 124
答案 0 :(得分:5)
将所有DataFrame添加到列表中,连接它们并计算每行的平均值:
dfs = [df1, df2, ... dfn]
pd.concat(dfs, axis=1).mean(axis=1)
答案 1 :(得分:1)
改为使用numpy
。
假设数据框列表dfs
dfs = [pd.DataFrame(np.random.randint(10, size=(10, 10))) for _ in range(50)]
然后使用np.concatenate
然后选择mean
来计算均值。但是numpy
这也应该更快。
pd.Series(np.concatenate([df.values for df in dfs], axis=1).mean(1), dfs[0].index)
0 4.472
1 4.722
2 4.644
3 4.574
4 4.624
5 4.446
6 4.548
7 4.606
8 4.440
9 4.442
dtype: float64
时间