假设我有以下数据框,
A B
0 1986-87 232131
1 1987-88 564564
2 1988-89 123125
...
等等。
我正在尝试重新索引<myFrame>.set_index('A')
,这样我就得到
B
1986-87 232131
1987-88 564564
1988-89 123125
但我不断得到这个:
B
A
1986-87 232131
1987-88 564564
1988-89 123125
这很烦人,因为我尝试了其他重新索引方法。我不确定是什么A
实际上代表的是因为它没有出现在<myFrame>.columns
or <myFrame>.index
和做<myFrame>['B'][0]
给我232131
,那么什么是A
在这个重新索引的数据框中,我怎样才能从一开始就正确索引或摆脱这个奇怪的A
在错误地重新索引数据框中。
您需要重置索引的 name/names 属性:
df.index.names = [None]
Example:
In [11]: df = pd.DataFrame([[1, 2], [3, 4]], columns=['A', 'B']).set_index('A')
In [12]: df
Out[12]:
B
A
1 2
3 4
In [13]: df.index.names = [None]
In [14]: df
Out[14]:
B
1 2
3 4
这些名称描述了索引,并赋予索引一些含义,并且还区分索引中的不同级别(在 MultiIndex 中)。
正如 @DSM 指出的,这样做需要您自担风险,如果您想重置索引,这会丢失信息:
In [15]: df.reset_index() # col_fill=['A', 'B'])
Out[15]:
index B
0 1 2
1 3 4
但是,您可以手动 col_fill 名称:
In [16]: df.reset_index(col_fill=['A'])
Out[16]:
A B
0 1 2
1 3 4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)