我试图创建一个新变量,作为数据库中另一个数值var的平均值(mark1 type = float)
。
不幸的是,结果是一个具有所有NaN
值的新列。
还是不明白为什么。
我的代码如下:
df = pd.read_csv("students2.csv")
df.loc[:, 'mean_m1'] = pd.Series(np.mean(df['mark1']).mean(), index= df)
这是代码后的前几行:
df.head()
ID gender subject mark1 mark2 mark3 fres mean_m1
0 1 mm 1 17.0 20.0 15.0 neg NaN
1 2 f 2 24.0 330.0 23.0 pos NaN
2 3 FEMale 1 17.0 16.0 24.0 0 NaN
3 4 male 3 27.0 23.0 21.0 1 NaN
4 5 m 2 30.0 22.0 24.0 positive NaN
None
将打印错误消息。
太多了
你需要
GroupBy
+transform
和'mean'
对于您所提供的数据,这相当于
mark1
。作为一个初步步骤,你可能应该将你的性别映射到类别,例如M
或F
相关问题 更多 >
编程相关推荐