Php 简单方差&;数字数组的标准差
我已经阅读了所有关于PHP中标准差和方差的内容,在网上找到了很多例子,但仍然没有一个能给出与Excel相同的结果 假设我有:Php 简单方差&;数字数组的标准差,php,standard-deviation,variance,Php,Standard Deviation,Variance,我已经阅读了所有关于PHP中标准差和方差的内容,在网上找到了很多例子,但仍然没有一个能给出与Excel相同的结果 假设我有: $array1 = array(5,46,37,21,8,55,1); 我只需要数组中这些数字的方差和标准差 有简单的直接线索吗?这个步骤是从谷歌帮助页面复制的,尽管我已经做了无数次了。我很容易忘记。要计算数字数组的标准偏差,请执行以下操作: 算出平均值(数字的简单平均值) 然后,对于每个数字:减去平均值并将结果平方 然后算出这些平方差的平均值 取它的平方根,我们就
$array1 = array(5,46,37,21,8,55,1);
我只需要数组中这些数字的方差和标准差
有简单的直接线索吗?这个步骤是从谷歌帮助页面复制的,尽管我已经做了无数次了。我很容易忘记。要计算数字数组的标准偏差,请执行以下操作:
<?php
// function to calculate the standard deviation
// of array elements
function Stand_Deviation($arr)
{
$num_of_elements = count($arr);
$variance = 0.0;
// calculating mean using array_sum() method
$average = array_sum($arr)/$num_of_elements;
foreach($arr as $i)
{
// sum of squares of differences between
// all numbers and means.
$variance += pow(($i - $average), 2);
}
return (float)sqrt($variance/$num_of_elements);
}
// Input array
$arr = array(2, 3, 5, 6, 7);
print_r(Stand_Deviation($arr));
?>
这个分步过程是从Google帮助页面复制的,尽管我已经做了无数次。我很容易忘记。要计算数字数组的标准偏差:
<?php
// function to calculate the standard deviation
// of array elements
function Stand_Deviation($arr)
{
$num_of_elements = count($arr);
$variance = 0.0;
// calculating mean using array_sum() method
$average = array_sum($arr)/$num_of_elements;
foreach($arr as $i)
{
// sum of squares of differences between
// all numbers and means.
$variance += pow(($i - $average), 2);
}
return (float)sqrt($variance/$num_of_elements);
}
// Input array
$arr = array(2, 3, 5, 6, 7);
print_r(Stand_Deviation($arr));
?>
在发布问题之前,我看到了这一点,但出于某种原因,我不知道为什么,总是给出不同于Excel的数字。我将再试一次,看看。尝试添加行“return$variance/$num_of_elements”(在平方根之前),因为可能您得到的是方差(不是标准差)从Excel…我的意思是,数学很简单-它只是数组值的平均值!这不会错的。Excel中有其他版本的统计数据,但我对它们几乎一无所知,我不是一个Excel的家伙。如果我把事情弄得更糟,很抱歉发布…好吧,即使在我看到的给定示例中,这里的方差没有计算出来nline之前,方差是静态变量=0,然后是方差+=我的意思是如何测试此数组的方差?此解释复制自:我在学校做过多次(但我现在不在学校).1)从数据中的每个值中减去平均值。这为您提供了每个值与平均值之间距离的度量。2)将每个距离平方(因此它们都是正值),并将所有平方相加。3)将平方和除以数据集中的值数。4)标准差(σ)只是方差的(正)平方根。我主要使用Java、Javascript和HTML/CSS,但我已经用了足够的PHP来阅读上面的代码。语法正确,并且它清楚地找到了(通常的)均值、中位数、方差/标准差的数学定义……我知道财务人员使用Excel——也许你的Excel电子表格误用了均值、中位数和方差这一术语。它们在数学上非常简单——在PHP代码和我键入的英文定义中都有明确的定义ove!(同样,是从谷歌复制的,但我肯定记得它是从大学里学来的!)我在发帖之前就看到了这一点,但出于某种原因,我不知道为什么,总是给出不同于Excel的数字。我会再试一次,看看。试着添加行“return$variance/$num_of_elements”(在平方根之前),因为可能你得到的是方差(不是标准差)从Excel…我的意思是,数学很简单-它只是数组值的平均值!这不会错的。Excel中有其他版本的统计数据,但我对它们几乎一无所知,我不是一个Excel的家伙。如果我把事情弄得更糟,很抱歉发布…好吧,即使在我看到的给定示例中,这里的方差没有计算出来nline之前,方差是静态变量=0,然后是方差+=我的意思是如何测试此数组的方差?此解释复制自:我在学校做过多次(但我现在不在学校).1)从数据中的每个值中减去平均值。这为您提供了每个值与平均值之间距离的度量。2)将每个距离平方(因此它们都是正值),并将所有平方相加。3)将平方和除以数据集中的值数。4)标准差(σ)只是方差的(正)平方根。我主要使用Java、Javascript和HTML/CSS,但我已经用了足够多的PHP来阅读上述代码。语法正确,它清楚地找到了均值、中位数、方差/标准差的(通常)数学定义……我知道