gpt4 book ai didi

python - Pandas Dataframe 的汇总计算

转载 作者:太空宇宙 更新时间:2023-11-03 18:44:56 25 4
gpt4 key购买 nike

我有一个看起来像底部的 DF(摘录,有 4 个区域,日期每季度扩展)

我想创建一个 df(按地区),仅包含最新日期与上一季度和上一年(同一季度)之间的差异

此时region和Quradate都是索引。

所以我想要类似的东西(不是真正接近):

(['region'] ['Quradate'][-1:-1])-(['region'] ['Quradate'][-2:-2]) 
& (['region'] ['Quradate'][-1:-1])-(['region'] ['Quradate'][-5:-5])

所以我最终会在每个区域得到两行,第一行是与上季度的分数差异(实际上有 5 个分数),第二行是与上一年的差异。

卡住了...

                                                                  Score1      Score2  
region Quradate
North_Central-Birmingham-Tuscaloosa-Anniston 2010-01-15 47 50
2010-04-15 45 60
2010-07-15 45 40
2010-10-15 42 43
2011-01-15 46 44
2011-04-15 45 45
2011-07-15 45 45
2011-10-15 43 46
2012-01-15 51 55
2012-04-15 53 56
2012-07-15 51 57
2012-10-15 52 58
2013-01-15 50 50
2013-04-15 55 55
2013-07-15 55 56
2013-10-15 51 66
North_Huntsville-Decatur-Florence 2010-01-15 55 55

最佳答案

请参阅此处的解决方案和讨论:Selecting a new dataframe via a multi-indexed frame in Pandas using index names

基本上您所需要的只是与上一时期的差异

df.groupby(level='region').apply(lambda x: x.diff().iloc[-1])

与一年前(4 个季度)的差异

df.groupby(level='region').apply(lambda x: x.diff(4).iloc[-1])

关于python - Pandas Dataframe 的汇总计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19736144/

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