【发布时间】:2017-07-17 18:19:49
【问题描述】:
我想对数据框的多组应用一个操作,然后用结果填充该组的所有值。让我们以 mean 和 np.cumsum 为例和以下数据框:
df=pd.DataFrame({"a":[1,3,2,4],"b":[1,1,2,2]})
看起来像这样
a b
0 1 1
1 3 1
2 2 2
3 4 2
现在我想通过b 对数据框进行分组,然后在每个组中取a 的平均值,然后将np.cumsum 应用于平均值,然后将a 的所有值替换为(取决于组) 结果。
对于前三个步骤,我会这样开始
df.groupby("b").mean().apply(np.cumsum)
给了
a
b
1 2
2 5
但我想得到的是
a b
0 2 1
1 2 1
2 5 2
3 5 2
有什么好的方法可以解决这个问题的吗?
【问题讨论】:
标签: python pandas pandas-groupby