使用java计算数组方差和标准差
使用java计算数组方差和标准差
觉得有用的话,欢迎一起讨论相互学习~Follow Me
首先给出方差和标准差的计算公式


代码
public class Cal_sta {
double Sum(double[] data) {
double sum = 0;
for (int i = 0; i < data.length; i++)
sum = sum + data[i];
return sum;
}
double Mean(double[] data) {
double mean = 0;
mean = Sum(data) / data.length;
return mean;
}
// population variance 总体方差
double POP_Variance(double[] data) {
double variance = 0;
for (int i = 0; i < data.length; i++) {
variance = variance + (Math.pow((data[i] - Mean(data)), 2));
}
variance = variance / data.length;
return variance;
}
// population standard deviation 总体标准差
double POP_STD_dev(double[] data) {
double std_dev;
std_dev = Math.sqrt(POP_Variance(data));
return std_dev;
}
//sample variance 样本方差
double Sample_Variance(double[] data) {
double variance = 0;
for (int i = 0; i < data.length; i++) {
variance = variance + (Math.pow((data[i] - Mean(data)), 2));
}
variance = variance / (data.length-1);
return variance;
}
// sample standard deviation 样本标准差
double Sample_STD_dev(double[] data) {
double std_dev;
std_dev = Math.sqrt(Sample_Variance(data));
return std_dev;
}
}
测试代码
public class testcal_sta {
public static void main(String arg[]) {
Cal_sta cal = new Cal_sta();
double[] testdata = {2, 4, 6, 7, 8, 9, 12, 36};
System.out.println("总和Sum " + cal.Sum(testdata));
System.out.println("平均值Mean " + cal.Mean(testdata));
System.out.println("总体方差Population Variance " + cal.POP_Variance(testdata));
System.out.println("总体标准差Population STD_dev " + cal.POP_STD_dev(testdata));
System.out.println("样本方差Sample Variance " + cal.Sample_Variance(testdata));
System.out.println("样本标准差Sample STD_dev " + cal.Sample_STD_dev(testdata));
}
}
结果

对比

使用java计算数组方差和标准差的更多相关文章
- JAVA 数组实例-求学生平均成绩,与计算数组的长度
实例: 知识点:数组名.length是计算数组的长度 import java.util.*; //求学生平均分成绩 public class Test{ public static void main ...
- C语言之文件操作07——读取文件数据并计算均值方差标准差
//文件 /* =============================================================== 题目:从文本文件"high.txt" ...
- Java(数组)动手动脑
1>数组作为方法参数 阅读并运行示例PassArray.java,观察并分析程序输出的结果,小结,然后与下页幻灯片所讲的内容进行对照. 源代码: // PassArray.java // Pas ...
- JAVA基础——数组详解
学习JAVA中数组的使用 一.什么是数组? 问:编写代码保存 4 名学生的考试成绩. 答:简单啊,定义 4 个变量呗 问:那"计算全年级 400 名学生的考试成绩",肿么办 答: ...
- java:数组操作工具类 java.util.Arrays包 主要方法详解
Arrays类位于Java.util包下,是一个对数组操作的工具类,现将Arrays类中的方法做一个总结(JDK版本:1.6.0_34).Arrays类中的方法可以分为八类: sort(对数组排序) ...
- Java-Runoob-高级教程-实例-数组:16. Java 实例 - 数组并集
ylbtech-Java-Runoob-高级教程-实例-数组:16. Java 实例 - 数组并集 1.返回顶部 1. Java 实例 - 数组并集 Java 实例 以下实例演示了如何使用 unio ...
- Java-Runoob-高级教程-实例-数组:13. Java 实例 – 数组交集
ylbtech-Java-Runoob-高级教程-实例-数组:13. Java 实例 – 数组交集 1.返回顶部 1. Java 实例 - 数组交集 Java 实例 以下实例演示了如何使用 reta ...
- Java-Runoob-高级教程-实例-数组:12. Java 实例 – 数组差集
ylbtech-Java-Runoob-高级教程-实例-数组:12. Java 实例 – 数组差集 1.返回顶部 1. Java 实例 - 数组差集 Java 实例 以下实例演示了如何使用 remo ...
- 【转】Java计算文件的hash值
原文地址:http://blog.csdn.net/qq_25646191/article/details/78863110 如何知道一个文件是否改变了呢?当然是用比较文件hash值的方法,文件has ...
随机推荐
- 算法 dfs —— 将二叉树 先序遍历 转为 链表
将二叉树拆成链表 中文English 将一棵二叉树按照前序遍历拆解成为一个 假链表.所谓的假链表是说,用二叉树的 right 指针,来表示链表中的 next 指针. Example 样例 1: 输入: ...
- Zabbix4.0如何添加监控信息
二.添加监控信息 监控Windows主机: 首先需要在Windows主机上安装好Zabbix agent,安装方法,见另一篇博客,https://www.cnblogs.com/opsprobe/p/ ...
- Spring Boot 中集成 Redis 作为数据缓存
只添加注解:@Cacheable,不配置key时,redis 中默认存的 key 是:users::SimpleKey [](1.redis-cli 中,通过命令:keys * 查看:2.key:缓存 ...
- iis7设置http跳转https实测可用
前面ytkah和大家聊了Apache设置http如何301到https,现在我们说说iis7设置http跳转https,因为还是有很多人在用iis服务器.首先要先安装url rewrite modul ...
- css绘制各种图形,三角形,长方形,梯形
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA8cAAADVCAIAAAD1mxUAAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWX ...
- 前端知识--mulline框架,返回到前一个页面,并且刷新前一个页面
最近在写项目的时候,遇到了这样一个问题,在第二页面修改完了数据之后,点击返回按钮的时候,第一个页面要返显出第一个页面的数据,这想想其实也不是很难,但是,难就难在,这两个页面是同时打开的.关闭了一个页面 ...
- Windows10 Docker镜像加速
https://dockerhub.azk8s.cn #Azure 中国镜像 https://reg-mirror.qiniu.com #七牛云加速器 https://registry.docker- ...
- MySQL备份python代码
import os, time, pymysql, shutil from apscheduler.schedulers.blocking import BlockingScheduler # 定时任 ...
- Maven下创建SSM项目的所有依赖和插件
记录下来,方便以后使用 tomcat:7 Maven:3.6.1 IDEA:2018.3 <properties> <spring.version>5.1.5.RELEASE& ...
- Git git2.8.1客户端安装教程
Git git2.8.1客户端安装教程 一 Git介绍 git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开 ...