本文主要和大家介绍了PHP基于方差和标准差计算学生成绩的稳定性操作,涉及PHP数学运算相关操作技巧,需要的朋友可以参考下,希望能帮助到大家。
项目中的学生端有处个人成长档案模块,要求依据学生近期十次考试成绩通过波动采集分析学生的成绩稳定性。学过数学都知道,这处应该利用数学中的方差来实现。由于是个数学渣,不得不网上看了下相关的说明和公式,见下图
好了,有了公式,那就好办了,接下来就是套公式了。
$arr1 = array(50, 100, 100, 60, 50); $arr2 = array(73, 70, 75, 72, 70); function variance($arr) { $length = count($arr); if ($length == 0) { return array(0,0); } $average = array_sum($arr)/$length; $count = 0; foreach ($arr as $v) { $count += pow($average-$v, 2); } $variance = $count/$length; return array('variance' => $variance, 'square' => sqrt($variance), 'average' => $average); } print_r(variance($arr1)); print_r(variance($arr2));
上述代码打印
Array ( [variance] => 536 [square] => 23.15167380558 [average] => 72 ) Array ( [variance] => 3.6 [square] => 1.897366596101 [average] => 72 )
通过查看数据发现,尽管两个数组的平均值是一样的,但数组1波动大,成绩不稳定,数组2波动小成绩较数组1稳定。
相关推荐:
Atas ialah kandungan terperinci PHP计算学生成绩的稳定性. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!