如何在Pandas DataFrame上添加列标签

Ste*_*ele 5 python pandas

我不明白如何在熊猫数据框上添加列名,一个简单的例子将阐明我的问题:

dic = {'a': [4, 1, 3, 1], 'b': [4, 2, 1, 4], 'c': [5, 7, 9, 1]}
df = pd.DataFrame(dic)
Run Code Online (Sandbox Code Playgroud)

现在,如果我输入df,我会得到

   a  b  c
0  4  4  5
1  1  2  7
2  3  1  9
3  1  4  1
Run Code Online (Sandbox Code Playgroud)

现在说,我只是通过总结上一个数据列来生成另一个数据帧

a = df.sum()
Run Code Online (Sandbox Code Playgroud)

如果我输入“ a”,我会得到

a     9
b    11
c    22
Run Code Online (Sandbox Code Playgroud)

看起来像一个数据框,没有索引,只有一列没有名称。所以我写了

a.columns = ['column']
Run Code Online (Sandbox Code Playgroud)

要么

a.columns = ['index', 'column']
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,Python都很高兴,因为他没有向我提供任何错误消息。但是,即使我键入“ a”,也无法在任何地方看到列名。怎么了

yse*_*rka 5

该方法DataFrame.sum()进行汇总,因此返回a Series,而不是a DataFrame。系列没有列,只有索引。如果要使用总和创建DataFrame,可以a = df.sum()通过以下方法进行更改:

a = pandas.DataFrame(df.sum(), columns = ['whatever_name_you_want'])
Run Code Online (Sandbox Code Playgroud)