在python中使用熊猫格式化列

时间:2020-02-09 04:37:08

标签: python pandas

我下面有一个从csv读取的函数(下面也包括示例)

功能:

def logic_one(grades):
    df1 = pd.read_csv(grades)
    del df1['Student ID']
    df2 = df1.mean()
    df2.columns = ['Questions', 'Mean']
    print(df2)

CSV示例:

Student ID,Question 1,Question 2,Question 3,Question 4,Question 5,Question 6
205842,6.5,6.5,9.5,5.5,3.5,9.5
280642,8.5,9.5,3.5,9.5,4,9.5
289179,7,9.5,9,9.5,7,4

当前返回以下内容:

Question 1 6.62
Question 2 6.74
Question 3 6.55
Question 4 6.11
Question 5 6.69
Question 6 6.74
dtype: float64

但是,我希望它返回第2列上方的标题为“ Mean”的标题。我以为函数的第5行会做到这一点,但是事实并非如此,有人对我为什么出错有任何想法吗?

此外,如果您对如何删除'dtype:float64'行有任何反馈,也将很有帮助。

1 个答案:

答案 0 :(得分:0)

如@ cs95所述,mean()返回一个Series,并且您要将其转换为DataFrame。

您可以使用Series.to_frame进行该转换,并且可以在该转换时命名该列。

df2 = df1.mean().to_frame(name='Mean')