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