嘿,我很难搞清楚如何计算Java中数组的标准占卜数。正如你所看到的,我已经计算了平均值,而且我知道最后我将不得不除以样本量减去1(n-1)并平均该数值。我遇到的问题是如何获取每个数字并计算距离平均值有多远,然后计算该数字。我知道我可以分别从数据集中完成每个数字,但必须有一个更简单的方法。任何帮助将不胜感激,这是我的代码。任何大小数组的标准偏差java
public class CalculateArray
{
public static void main(String[] args)
{
int [] numbers = new int[]{1,2,3,4,5,6,7,8,9};
int sum = 0;
int max = 0;
int min = numbers[0];
double sd = 0;
for(int i=0; i<numbers.length; i++)
{
sum = sum + numbers[i];
}
double average = sum/numbers.length;
System.out.println("Average value is : " + average);
for(int i=0; i<numbers.length; i++)
{
if(numbers[i] > max)
{
max = numbers[i];
}
}
System.out.println("max number is : " + max);
for(int i=0; i<numbers.length; i++)
{
if(numbers[i] < min)
{
min = numbers[i];
}
}
System.out.println("min number is : " + min);
for (int i=0; i<numbers.length;i++)
{
//this is where im having problems
sd = ???
}
double standardDeviation = math.sqrt(sd/(numbers.length-1));
System.out.println("The standard deviation is : " + standardDeviation);
}
}
'std + = pow(average - numbers [i],2)''? – imreal 2013-02-12 18:20:11