用pandas中的reset_index报错是为什么?

笙箫sx 2017-11-16 04:44:52
代码如下,我希望把原来的索引时间去掉,改成股票代码Stkcd:

test=stock_daily[['Stkcd', 'Dretnd']]
print(date[0])
slice=test[str(date[0])].reset_index()
print(slice)
del slice['Trddt']
print(slice.reset_index('Stkcd',drop=True).T)


运行结果:
2000-07-10 00:00:00
Trddt Stkcd Dretnd
0 2000-07-10 600230 0.020356
1 2000-07-10 600738 -0.013671
Traceback (most recent call last):
File "<input>", line 6, in <module>
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/frame.py", line 3341, in reset_index
level = [self.index._get_level_number(lev) for lev in level]
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/frame.py", line 3341, in <listcomp>
level = [self.index._get_level_number(lev) for lev in level]
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/indexes/base.py", line 1620, in _get_level_number
self._validate_index_level(level)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/indexes/base.py", line 1617, in _validate_index_level
(level, self.name))
KeyError: 'Level Stkcd must be same as name (None)'

...全文
388 1 点赞 打赏 收藏 举报
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Luenci379 2019-05-14
建议你可以 直接set_index('Stkcd',drop=True)
  • 打赏
  • 举报
回复
相关推荐
发帖
脚本语言
加入

3.7w+

社区成员

JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
申请成为版主
帖子事件
创建了帖子
2017-11-16 04:44
社区公告

CSDN 脚本语言社区接受专栏投稿(专栏会在顶部创建专属你的栏目),投稿需满足以下要求:

  • 脚本语言技术相关;
  • 文章持续更新,保持活跃;
  • 内容清晰明了,干货为主;
  • 文章排版有序,有条有理。

本社区开通招聘专栏,发布招聘信息请联系版主,发布者需要保证招聘信息真实有效,CSDN 平台和版主不对招聘内容负责!

联系方式:私聊版主、发送邮件、QQ联系等均可: