用pandas中的reset_index报错是为什么?
代码如下,我希望把原来的索引时间去掉,改成股票代码Stkcd:
运行结果:
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)'
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)'
...全文
相关推荐
Pandas reset_index()用法[项目代码]
掌握reset_index()的用法,对于任何使用Pandas进行数据分析的专业人士来说都至关重要。
pandas将DataFrame的列变成行索引的方法
总而言之,set_index和reset_index是pandas中操作DataFrame索引的常用方法。set_index能够将DataFrame的列转换为行索引,包括多层次索引的创建。
Pandas手册.pdf
Pandas 提供了多种方式来操作索引和重命名,例如 reset_index()、rename() 等。
pandas索引(loc,[],iloc,query,at/iat,cut,set_index,sort_index,reset_index,where,drop_duplicates…)
在数据分析领域,pandas库是不可或缺的工具,它提供了一系列高效的数据处理功能。本文将深入探讨pandas中的索引操作,包括单级索引、多级索引、索引设定、常用索引型函数以及重复元素处理等核心知识点。
Pandas之DataFrame对象的列和索引之间的转化
这些操作可以通过`set_index()`和`reset_index()`方法来实现。#### 一、列转化为索引将DataFrame中的某一列或几列设置为索引,可以方便地进行分组等操作。


