114

我有一个像这样的数据框:

In [10]: df
Out[10]: 
         Column 1
foo              
Apples          1
Oranges         2
Puppies         3
Ducks           4

如何index name foo从该数据框中删除?所需的输出是这样的:

In [10]: df
Out[10]: 
         Column 1             
Apples          1
Oranges         2
Puppies         3
Ducks           4
4

6 回答 6

122

Alternatively you can just assign None to the index.name attribute:

>>> df.index.name = None
>>> print(df)
         Column 1    
Apples          1
Oranges         2
Puppies         3
Ducks           4
于 2015-04-21T07:56:57.097 回答
77

利用del df.index.name

In [16]: df
Out[16]:
         Column 1
foo
Apples          1
Oranges         2
Puppies         3
Ducks           4

In [17]: del df.index.name

In [18]: df
Out[18]:
         Column 1
Apples          1
Oranges         2
Puppies         3
Ducks           4
于 2015-04-21T07:38:20.177 回答
59

我花了太长时间才找到真正适合我的答案。见下文。

df = df.rename_axis(None, axis=1)

我确信其中一些其他答案对其他人有用,但它们绝对不适合我:(

于 2020-10-20T19:12:33.807 回答
51

从版本0.18.0您可以使用rename_axis

print df
         Column 1
foo              
Apples          1
Oranges         2
Puppies         3
Ducks           4

print df.index.name
foo


print df.rename_axis(None)
         Column 1
Apples          1
Oranges         2
Puppies         3
Ducks           4

print df.rename_axis(None).index.name
None

# To modify the DataFrame itself:
df.rename_axis(None, inplace=True)
print df.index.name
None
于 2016-03-15T14:37:13.043 回答
2

对于您的情况,只需使用以下代码。在熊猫 1.0.1 上测试。

df = df.rename_axis(index=None)
于 2021-06-17T06:10:30.237 回答
1

简单的改变——就地做:

df_degree.rename_axis(None, axis=1, inplace=True)
于 2021-04-02T18:23:08.520 回答