Pandas Groupby和两个变量相加 -

时间:2017-02-24 15:15:16

标签: python python-3.x pandas

我正在做一个groupby并总结两个变量。第二个变量是年份,在我的例子中,只有两年(2015年和2016年)。对于和的第二行,现在显示第一个变量(ID#)。我如何强制它显示?

代码:

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

输出样本:

1234567             2015             596407.81
                    2016            7224148.34

如何让第二行获得ID 1234567?

1 个答案:

答案 0 :(得分:3)

groupby中使用参数as_index=False

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