Python Dataframe Groupby 均值和标准差
Posted
技术标签:
【中文标题】Python Dataframe Groupby 均值和标准差【英文标题】:Python Dataframe Groupby Mean and STD 【发布时间】:2021-09-06 09:10:04 【问题描述】:我知道如何计算 groupby mean 或 std。但现在我想同时计算两者。 我的代码:
df =
a b c d
0 Apple 3 5 7
1 Banana 4 4 8
2 Cherry 7 1 3
3 Apple 3 4 7
xdf = df.groupby('a').agg([np.mean(),np.std()])
目前的输出:
TypeError: _mean_dispatcher() missing 1 required positional argument: 'a'
【问题讨论】:
【参考方案1】:尝试从np.
函数中删除()
:
xdf = df.groupby("a").agg([np.mean, np.std])
print(xdf)
打印:
b c d
mean std mean std mean std
a
Apple 3 0.0 4.5 0.707107 7 0.0
Banana 4 NaN 4.0 NaN 8 NaN
Cherry 7 NaN 1.0 NaN 3 NaN
编辑:“展平”列多索引:
xdf = df.groupby("a").agg([np.mean, np.std])
xdf.columns = xdf.columns.map("_".join)
print(xdf)
打印:
b_mean b_std c_mean c_std d_mean d_std
a
Apple 3 0.0 4.5 0.707107 7 0.0
Banana 4 NaN 4.0 NaN 8 NaN
Cherry 7 NaN 1.0 NaN 3 NaN
【讨论】:
如何将列重命名为b_mean
、b_std
等?
非常棒的解决方案。谢谢以上是关于Python Dataframe Groupby 均值和标准差的主要内容,如果未能解决你的问题,请参考以下文章