对数据帧中的行求和,同时保持相似的数据帧结构

2024-09-27 02:15:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下数据帧:

Stint    Year   ID  Data1    Data2  Team
  1     2010    A    10       1      SFN
  1     2011    A    10       1      SFN
  1     2013    A    10       1      SFN
  2     2013    A    10       1      ATL
  1     1922    B    10       1      ARI
  1     1923    B    10       1      ARI
  1     1924    B    10       1      ARI

我试图返回一个新的DataFrame,它将Data1和Data2列中相同年份的值相加。我希望上面的数据帧最终看起来像这样:

    Year   ID  Data1    Data2 
    2010    A    10       1      
    2011    A    10       1         
    2013    A    20       2      
    1922    B    10       1      
    1923    B    10       1      
    1924    B    10       1      

我已经搞乱了一些groupby函数,但是在获取正确的数据帧结构时遇到了问题

谢谢


Tags: 数据函数iddataframe结构yearteam年份
2条回答

groupbyas_index=False

不会在新索引中包含分组列

df.groupby(['Year', 'ID'], as_index=False)[['Data1', 'Data2']].sum()

   Year ID  Data1  Data2
0  1922  B     10      1
1  1923  B     10      1
2  1924  B     10      1
3  2010  A     10      1
4  2011  A     10      1
5  2013  A     20      2

groupbysort=false

此外,如果您希望以相同的年份格式保存数据,例如[20102011213192219231924],则可以选中“sort=False” 因此,可以使用设置为false的排序值编写相同的代码,如下所示:

df.groupby(['Year', 'ID'], as_index= False, sort= False)[['Data1', 'Data2']].sum()

相关问题 更多 >

    热门问题