新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Java求方差和标准差:
成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站制作、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的高青网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
public class GetAverageandStandardDevition {
private int[] array = new int[10];
private int num = 10;
public int getRandomDigit() {
return (int) (Math.random() * 1000);
}
public void getTargetDigit() {
for (int i = 0; i num; i++) {
array[i] = getRandomDigit();
System.out.println(array[i]);
}
}
//方差
public double getAverage(){
int sum = 0;
for(int i = 0;i num;i++){
sum += array[i];
}
return (double)(sum / num);
}
//标准差
public double getStandardDevition(){
double sum = 0;
for(int i = 0;i num;i++){
sum += Math.sqrt(((double)array[i] -getAverage()) * (array[i] -getAverage()));
}
return (sum / (num - 1));
}
public static void main(String[] args) {
GetAverageandStandardDevition gcs = new GetAverageandStandardDevition();
gcs.getTargetDigit();
System.out.println(gcs.getAverage() + " " + gcs.getStandardDevition());
}
public static void main(String[] args) {
double[] array = { 1, 2, 3, 4, 5, 6 };
double ave = 0;
for (int i = 0; i array.length; i++)
ave += array[i];
ave /= array.length;
double sum = 0;
for(int i = 0;iarray.length;i++)
sum += (array[i] - ave) * (array[i] - ave) ;
sum /= array.length;
System.out.println(sum);
}
现在学习Java的平台有很多,B站或者是腾讯课堂都是不错的,我们在B站分享了很多经典的Java视频教程,都是开源的,你可以去看看。
哈哈,这简单!方差就是各数与平均数之差的平方的平均数吧?
简单思路就是new一个list装数,平均数n=各数之和/list.size(),然后取各数与n之差的平方(list.get(i)-n)*(list.get(i)-n),然后for循环计算出和再去平均数。