用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)'

...全文
709 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Luenci379 2019-05-14
  • 打赏
  • 举报
回复
建议你可以 直接set_index('Stkcd',drop=True)

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧