gpt4 book ai didi

python - Pandas groupby 多列,使用 pct_change

转载 作者:太空狗 更新时间:2023-10-30 00:43:25 24 4
gpt4 key购买 nike

我试图找出每个独特组的 Value 的周期性增长,按(CompanyGroup , 和 日期).

Company Group Date     Value
A X 2015-01 1
A X 2015-02 2
A X 2015-03 1.5
A XX 2015-01 1
A XX 2015-02 1.5
A XX 2015-03 0.75
A XX 2015-04 1
B Y 2015-01 1
B Y 2015-02 1.5
B Y 2015-03 2
B Y 2015-04 3
B YY 2015-01 2
B YY 2015-02 2.5
B YY 2015-03 3

我试过:

df.groupby(['Date','Company','Group']).pct_change()

但这会返回所有 NaN。

我要找的结果是:

Company Group Date     Value/People
A X 2015-01 NaN
A X 2015-02 1.0
A X 2015-03 -0.25
A XX 2015-01 NaN
A XX 2015-02 0.5
A XX 2015-03 -0.5
A XX 2015-04 0.33
B Y 2015-01 NaN
B Y 2015-02 0.5
B Y 2015-03 0.33
B Y 2015-04 0.5
B YY 2015-01 NaN
B YY 2015-02 0.25
B YY 2015-03 0.2

最佳答案

您想将您的日期放入行索引并将组/公司放入列

d1 = df.set_index(['Date', 'Company', 'Group']).Value.unstack(['Company', 'Group'])
d1

enter image description here

然后使用pct_change

d1.pct_change()

enter image description here

使用分组

df['pct'] = df.sort_values('Date').groupby(['Company', 'Group']).Value.pct_change()
df

enter image description here

关于python - Pandas groupby 多列,使用 pct_change,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40273251/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com