Pandas 如何根据多索引定义的范围对一列中的值范围求和
我真的被难倒了 我有一个多索引数据框,看起来像这样Pandas 如何根据多索引定义的范围对一列中的值范围求和,pandas,multi-index,Pandas,Multi Index,我真的被难倒了 我有一个多索引数据框,看起来像这样 data index1 index2 0 1 8 2 7 3 6 4 9 1 1 3 2 4 3 3 4 6 2 1 5 2 5 。。。。等等 我试图根据index
data
index1 index2
0 1 8
2 7
3 6
4 9
1 1 3
2 4
3 3
4 6
2 1 5
2 5
。。。。等等
我试图根据index2中的一系列值,对每个index1的数据列中的值进行求和,以创建一个新的数据帧
i、 e.如果我要从数据值中创建一个新的数据帧,该数据值对应于上述示例中每个index1的index2的前2个值
index1 summed_data
0 15
1 7
2 10
有人知道怎么做吗?您不需要使用以下语句更改输入格式:
x = df.groupby(level ='index1').agg({'data': lambda x: x[:2].sum()}).rename(columns = {'data':'summed_data'})
然后打印:
summed_data
index1
0 15
1 7
2 10
成功了!非常感谢你。这是在整理数据时又一次减速。似乎我需要更好地学习如何使用.agg和lambda功能幸运的是,我不能公开投票,直到我再问15个代表3个问题,我就有足够的时间开始投票了^这是我的错,哈哈