【问题标题】:Python Dataframe Groupby Mean and STDPython Dataframe Groupby 均值和标准差
【发布时间】: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'
【问题讨论】:
标签:
python
dataframe
numpy
pandas-groupby
mean
【解决方案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