2017-02-24 54 views
2

我正在做一個groupby和兩個變量的總和。第二個變量是年份,就我的例子而言,只有兩年(2015年和2016年)。對於總和的第二行,現在顯示第一個變量(一個ID#)。我如何強制它顯示?Pandas Groupby和兩個變量的總和 -

代碼:

totals = df.groupby(by=['id', 'year'])['sales'].sum() 
print(totals) 

輸出採樣:

1234567    2015    596407.81 
        2016   7224148.34 

我如何獲得第二行有ID 1234567?

回答

2

使用參數as_index=Falsegroupby

totals = df.groupby(by=['id', 'year'], as_index=False)['sales'].sum() 
print(totals) 

或者reset_index

totals = df.groupby(by=['id', 'year'])['sales'].sum().reset_index() 
print(totals) 

之所以沒有看到在首列的最後一個值是MultiIndex