我有一个 df 作为
我想过滤出同比变化百分比和不同季度之间的总变化。
我不确定如何在 python 中启动它,任何帮助将不胜感激。
考虑到我有很多名称参数。我需要对每个 KPI、年份和季度使用分组筛选器,我尝试过
d2['d'] = d2.groupby(['KPI', 'Quarter', ])['Number'].apply( lambda x: (x - x.shift(4))/x )
最佳答案
使用Series,pct_change
每组,乘以 mul
如有必要round
:
d2['Percent Change'] = (d2.groupby(['KPI', 'Quarter'])['Number']
.transform(pd.Series.pct_change)
.mul(100)
.round())
对于总更改,请添加 cumsum
d2['Total Change'] = d2['Number'].pct_change().cumsum().mul(100).round().fillna(0)
关于python - pandas 数据框中的值之间的比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53810655/