我花了几个小时浏览了所有地方,试图从熊猫的数据帧创建一个多索引。这是我的数据框架(发布excel图纸模型。我的数据框架中有):
这就是我想要的:
我试过了
newmulti=currentDataFrame.设置索引(['user\u id','account\u num'])
但它返回的是数据帧,而不是多索引。此外,我还不知道如何将“用户id”级别设置为0,将“帐户编号”级别设置为1。我想这一定很琐碎,但我读了太多的帖子、教程等,仍然无法理解。部分原因是我是一个非常有视觉效果的人,而大多数帖子都不是。请帮忙
在本例中,您可以简单地使用groupby
,它将在对所请求列的销售额求和时自动创建多索引
df.groupby(['user\u id','account\u num','dates']).sales.sum().to\u frame()
您还应该能够简单地执行以下操作:
df.设置索引(['user\u id','account\u num','dates'])
虽然您可能希望通过求和来避免任何重复(例如,两行或多行具有相同的用户id
,帐户编号
和日期
值,但销售数字不同),这就是我建议使用分组方式
的原因
如果需要多索引,只需访问viatnew_-df。index
其中new_-df
是通过上述两个操作中的任何一个创建的新数据帧
而user\u id
将为0级,account\u num
将为1级