熊猫显示列号

时间:2017-06-11 14:20:09

标签: python pandas

有没有办法让pandas同时显示列号和列名?我处理的数据集包含> 30列,所有非常长的列名称和一些彼此差异很小的列名称。写出代码时输入名称是绝对的苦差事。 (我仍然需要查看列名以了解要选择的列)

感谢。

1 个答案:

答案 0 :(得分:4)

一种可能的解决方案是创建MultiIndex,然后按DataFrame.xs选择列:

df = pd.DataFrame({'A':[1,2,3],
                   'B':[4,5,6],
                   'C':[7,8,9],
                   'D':[1,3,5],
                   'E':[5,3,6],
                   'F':[7,4,3]})

print (df)
   A  B  C  D  E  F
0  1  4  7  1  5  7
1  2  5  8  3  3  4
2  3  6  9  5  6  3

df.columns = pd.MultiIndex.from_arrays([pd.RangeIndex(len(df.columns)), df.columns])
print (df)
   0  1  2  3  4  5
   A  B  C  D  E  F
0  1  4  7  1  5  7
1  2  5  8  3  3  4
2  3  6  9  5  6  3

print (df.xs(2, level=0, axis=1))
   C
0  7
1  8
2  9