我一直在寻找,但无法弄清楚如何在索引上命名列。例如,如何仅命名没有标题的数据帧的前3列,以便它们各自具有名称(例如A,B,C)?
答案 0 :(得分:1)
DataFrame方法rename
将要重命名的值字典作为输入。没有标题的数据框的列以整数命名,因此对于您的示例,您将使用字典{0:'A', 1:'B', 2:'C'}
:
In [1]: pd.DataFrame([[0,1,2,3]])
Out[1]:
0 1 2 3
0 0 1 2 3
In [2]: pd.DataFrame([[0,1,2,3]]).rename(columns = {0:'A', 1:'B', 2:'C'})
Out[2]:
A B C 3
0 0 1 2 3
如果您想要一个适用于任意标签和列名称列表的解决方案,您可以使用zip
创建字典:
L = ['A','B','C']
df.rename(columns = dict(zip(df.columns[:len(L)], L)))
Out[3]:
A B C 3
0 1 2 3 4