我有两个比率计算数据框。当我这样做时,我正在对每一列的每一行取平均值以获得一个值平均值,因为这两个平均比例在数据帧中不匹配
df1
name exm1 exm2 exm3 exm4
student1 0.43 0.36 0 1
student2 0 0 0 0.45
student3 0 0 0 0
student4 0.64 0 0.75 0.6
student5 0.12 0.23 0.57 0
student6 0 0 0 0.9
student7 0 1 0 0.3
student8 0.43 0.36 0 0.25
student9 0 0 0 0.58
student10 0 0 0 0
df2
name exm1 exm2 exm3 exm4
student1 0.57 0.64 0 0
student2 0 0 0 0.55
student3 0 0 0 1
student4 0.36 0 0.25 0.4
student5 0.88 0.77 0.43 0
student6 0 0 0 0.9
student7 0 0 0 0.3
student8 0 0 0 0.25
student9 0 0 0 0.58
student10 0 0 0 0
计算我在下面的代码中使用的平均值
df1['average'] = df1.mean(numeric_only=True, axis=1)
df2['average'] = df2.mean(numeric_only=True, axis=1)
在两个数据框中,当 comapare average along students average 不等于 1 的主要原因是两个单元格中都存在 0。例如 exm3 中的 student1 都是零,这种类型的零使得平均值不合适
name average_df1 average_df2 sum
student1 0.4475 0.451875 0.899375
student2 0.1125 0.140625 0.253125
student3 0 0 0
student4 0.4975 0.461875 0.959375
student5 0.23 0.2575 0.4875
student6 0.225 0.28125 0.50625
student7 0.325 0.40625 0.73125
student8 0.26 0.2175 0.4775
student9 0.145 0.18125 0.32625
student10 0 0 0
平均值之和应等于一。我怎样才能在熊猫中做到这一点任何建议
慕码人2483693
holdtom
相关分类