Pandas索引标题与列标题一致

时间:2017-04-26 13:31:00

标签: python pandas dataframe

对于我的数据集,我想将自动索引替换为数据框中的第一列,并将新索引标题与数据框的所有列名称一起内联。

原始数据集:

import numpy as np
import pandas as pd
df = pd.DataFrame(np.array([[1, 2, 3], [4, 5, 6]]),columns=['a','b','c'])
df

  a b c 
0 1 2 3
1 4 5 6

将索引设置为第一列:

df.set_index('a',inplace=True)
df

  b c
a 
1 2 3
4 5 6

然而,现在我仍然坚持如何使用列标题内联索引标题。以下是我要找的输出:

a b c
1 2 3
4 5 6

2 个答案:

答案 0 :(得分:3)

使用此技巧,但我认为这不是最佳做法:

df.columns.name = df.index.name
df.index.name = None
print (df)
a  b  c
1  2  3
4  5  6

答案 1 :(得分:0)

您可以使用

print(df.reset_index().to_string(index=False))

例如

import numpy as np
import pandas as pd
df = pd.DataFrame(np.array([[1, 2, 3], [4, 5, 6]]),columns=['a','b','c'])
df.set_index('a', inplace=True)
df

   b  c
a      
1  2  3
4  5  6

print(df.reset_index().to_string(index=False))
 a  b  c
 1  2  3
 4  5  6