我下面有一个从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'行有任何反馈,也将很有帮助。
答案 0 :(得分:0)
如@ cs95所述,mean()
返回一个Series,并且您要将其转换为DataFrame。
您可以使用Series.to_frame
进行该转换,并且可以在该转换时命名该列。
df2 = df1.mean().to_frame(name='Mean')