如何有效地获取数据帧中每个行值的平均值



我有 5 个数据帧是这样构建

A           B            C
2018-04-19 04:00:00     4.767408    4.767408     4.767408
2018-04-19 05:00:00     1.430304    3.683601     1.301930
2018-04-19 06:00:00     3.651601    0.207151     1.601330
2018-04-19 07:00:00     1.937919    1.301930     1.301930
2018-04-19 08:00:00     3.078898    3.751601     0.217151

2018-07-20 21:00:00     0.088575    1.301930     1.201930
2018-07-20 22:00:00     0.207151    0.038575     0.086775
2018-07-20 23:00:00     0.224044    0.217151     0.267151
2018-07-23 00:00:00     1.301930    0.988575     0.088573
2018-07-23 01:00:00    17.326162    1.301930     1.301930

列名是动态的(它们在 5 个数据帧中始终具有相同的名称,但有时在我的程序中它们都不称为 A、B、C,而是例如 Car、Hamburger、Samurai_Sword(。

如何有效地从此数据帧和其他数据帧获取一个数据帧,其中每个值都是 a( 平均值和 b( 相同位置值的中位数?

(所有DFS的指数相同(

下面是使用pd.Series.describe()获取数据帧的平均值和中位数的简单技术:

df.apply(pd.Series.describe, axis=1)[['mean','50%']]

为此,您需要将数据帧合并为一个。您可以使用pd.concat([df1,df2,df3,...], axis=1)简单地执行此操作

起初我以为你只是想要的平均值和中位数。如果你想要这个,使用 describe(( 也很简单:

df.describe().loc[['mean','50%']]

最新更新