为了账号安全,请及时绑定邮箱和手机立即绑定

熊猫:Set_index函数不会删除列

熊猫:Set_index函数不会删除列

喵喔喔 2021-03-04 21:30:20
我有以下DataFrame:df = pd.DataFrame({'Trader': 'Carl Mark Carl Joe Joe Carl Joe Carl'.split(),'Product': list('AAAABBAA'),'Quantity': [5,2,5,10,1,5,2,3],'Start' : [    DT.datetime(2013,1,1,9,0),    DT.datetime(2013,1,1,8,5),    DT.datetime(2013,2,5,14,0),    DT.datetime(2013,2,5,16,0),    DT.datetime(2013,2,8,20,0),                                          DT.datetime(2013,2,8,16,50),    DT.datetime(2013,2,8,7,0),    DT.datetime(2013,7,4,8,0)]})当我尝试通过以下方式放置索引时:df = df.set_index([df.Start, df.Trader, df.Product])它不会删除用于索引的列。即使当我使用以下命令明确指定它时:df = df.set_index([df.Start, df.Trader, df.Product], drop=True)这是错误还是我的代码有误?
查看完整描述

1 回答

?
慕妹3146593

TA贡献1820条经验 获得超9个赞

该参数是列名称的数组,但不是这些系列的列:


In [9]: df.set_index(['Start', 'Trader', 'Product'])

Out[9]: 

                                    Quantity

Start               Trader Product          

2013-01-01 09:00:00 Carl   A               5

2013-01-01 08:05:00 Mark   A               2

2013-02-05 14:00:00 Carl   A               5

2013-02-05 16:00:00 Joe    A              10

2013-02-08 20:00:00 Joe    B               1

2013-02-08 16:50:00 Carl   B               5

2013-02-08 07:00:00 Joe    A               2

2013-07-04 08:00:00 Carl   A               3


查看完整回答
反对 回复 2021-03-27
  • 1 回答
  • 0 关注
  • 188 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号