使用Apache commons-maths3-3.6.1.jar包进行简单的数据统计分析(java)
使用maths3函数进行简单的数据统计性描述;
使用场景:本地,直接运行就可以;
具体后面有个性化的需求,可以再修改~
package com; import org.apache.commons.lang.math.Range;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.math3.stat.StatUtils;
import org.apache.commons.math3.stat.descriptive.moment.StandardDeviation;
import org.apache.commons.math3.stat.descriptive.rank.Median; /*
* @description:简单的数据统计分析
* */ public class MathYsf {
public static void main(String[] args){
double[] values = new double[] { 0.33, 1.33,0.27333, 0.3, 0.501,
0.444, 0.44, 0.34496, 0.33,0.3, 0.292, 0.667 };
double[] values2 = new double[] { 0.89, 1.51,0.37999, 0.4, 0.701,
0.484, 0.54, 0.56496, 0.43,0.3, 0.392, 0.567 }; //计数
System.out.println("计算样本个数为:" +values.length);
//mean--算数平均数
System.out.println("平均数:" + StatUtils.mean(values));
//sum--和
System.out.println("所有数据相加结果为:" + StatUtils.sum(values));
//max--最小值
System.out.println("最小值:" + StatUtils.min(values));
//max--最大值
System.out.println("最大值:" + StatUtils.max(values));
//范围
System.out.println("范围是:" + (StatUtils.max(values)-StatUtils.min(values)));
//标准差
StandardDeviation standardDeviation =new StandardDeviation();
System.out.println("一组数据的标准差为:" + standardDeviation.evaluate(values));
//variance--方差
System.out.println("一组数据的方差为:" + StatUtils.variance(values));
//median--中位数
Median median= new Median();
System.out.println("中位数:" + median.evaluate(values));
//mode--众数
double[] res = StatUtils.mode(values);
System.out.println("众数:" + res[0]+","+res[1]);
for(int i = 0;i<res.length;i++){
System.out.println("第"+(i+1)+"个众数为:"+res[i]);
}
//geometricMean--几何平均数
System.out.println("几何平均数为:" +StatUtils.geometricMean(values));
//meanDifference-- 平均差,平均概率偏差
System.out.println("平均差为:"+StatUtils.meanDifference(values, values2));
//normalize--标准化
double[] norm = StatUtils.normalize(values2);
for(int i = 0;i<res.length;i++){
System.out.println("第"+(i+1)+"个数据标准化结果为:" + norm[i]);
}
//percentile--百分位数
System.out.println("从小到大排序后位于80%位置的数:" + StatUtils.percentile(values, 70.0));
//populationVariance--总体方差
System.out.println("总体方差为:" + StatUtils.populationVariance(values));
//product--乘积
System.out.println("所有数据相乘结果为:" + StatUtils.product(values));
//sumDifference--和差
System.out.println("两样本数据的和差为:" + StatUtils.sumDifference(values,values2));
//sumLog--对数求和
System.out.println("一组数据的对数求和为:" + StatUtils.sumLog(values));
//sumSq--计算一组数值的平方和
System.out.println("一组数据的平方和:" + StatUtils.sumSq(values));
//varianceDifference --方差差异性。
System.out.println("一组数据的方差差异性为:" + StatUtils.varianceDifference(values,values2,StatUtils.meanDifference(values, values2)));
}
}
个人认为,使用这些函数关键是知道他的公式和用法,能准确定位,有一些方法,我也找不到它的公式,只是罗列上了,欢迎批评指正~
使用Apache commons-maths3-3.6.1.jar包进行简单的数据统计分析(java)的更多相关文章
- IDEA中MAVEN项目打JAR包的简单方法
Idea中为一般的非Web项目打Jar包是有自己的方法的,网上一搜就能查到很多. 但是如果是为Maven项目打Jar包,其实是很简单的,因为maven本身就有打Jar包的命令. 最简单的方法 ...
- 将项目打成jar包执行 在liunx上执行 java -xx.jar
一:普通maven java项目 项目目录 pom.xml <?xml version="1.0" encoding="UTF-8"?> <p ...
- Android导入自定义的jar包时出现 E/AndroidRuntime(486): java.lang.NoClassDefFoundError错误
把自定义的jar包放在Android的工程的libs目录下,运行程序,会出现一下错误: 10-10 08:34:06.479: E/dalvikvm(486): Could not find clas ...
- Java -cp 命令行引用多个jar包的简单写法(Windows、Linux
1.Windows下用法 在Windows上,可以使用 用法:java your-jar-lib-folder/* your-main-class your-jar-lib-folder为存放一堆ja ...
- 使用C#利用cmd来调用java jar包获取其中的数据
其实也很简单,就是在C#中构建一个Process,启动jar包,并且给jar包传递参数 因为我并没有怎么学过JAVA,所以只写了个很小的Demo,就是根据传入的参数获取对应的数据 以下是JAVA De ...
- [Scala] java使用scala的jar包问题:Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Short
场景 刚写的scala处理bmp文件的实验, 打了jar包让java调用一下, 结果发生这个错误. package org.tanglizi.bmp.demo; import org.tanglizi ...
- org.apache.hadoop.fs.FsUrlStreamHandlerFactory 在哪个jar包
org.apache.hadoop.fs.FsUrlStreamHandlerFactory在org.apache.hadoop类中,org.apache.hadoop在hadoop安装目录下.
- IDEA 快速将spring boot项目打包成jar包,简单快速有效
原文地址;https://blog.csdn.net/chen846262292/article/details/80701101 https://www.cnblogs.com/chrischen ...
- 从JAR包中如何读取数据文件
还不是很懂.....待总结......
随机推荐
- 升级libstdc++、libgcc_s.so、libc.so.6
参考资料:https://blog.csdn.net/ltl451011/article/details/7763892/ https://blog.csdn.net/na_beginning/art ...
- Unable to resolve service for type 'Microsoft.Extensions.Logging.ILogger' while attempting to activate 'xxxxx.Controllers.xxxxController'.
Unable to resolve service for type 'Microsoft.Extensions.Logging.ILogger' while attempting to activa ...
- QT5的QChart使用记录
如果需要在QT中使用QChart类,需要在安装的时候勾选QChart选项,在工程的 .pro 文件里面添加 QT += charts 语句,包含 QChart 头文件就行了. 对于图表的显示,可以先拖 ...
- 开灯问题—C语言
开灯问题 有n盏灯,编号为1~n.第1个人把所有灯打开,第2个人按下所有编号为2的倍数开关(这些灯将被关掉),第3个人按下所有编号为3的倍数的开关,以此类推.一共有k个人,问最后哪些灯是开着?输入n和 ...
- 有些CCS工程中为什么会有两个CMD文件?
这里的CCS就是TI公司的Code Composer Studio 集成开发环境,所以这篇随笔也就是关于TI公司DSP开发过程中对于刚入门同学的一个常见问题了. 那作为一个初学者,对于CCS工程中的c ...
- CF1109F Sasha and Algorithm of Silence's Sounds LCT、线段树
传送门 构成一棵树可以分成两个限制:图不成环.图的点数-边数=1. 我们考虑枚举右端点\(r\)计算所有可能的左端点\(l\)的答案.我们先考虑第一个限制:图不成环.注意到当\(r\)确定的时候,满足 ...
- 24H玩转 Grafana 被工程师称相当专业,如何做到?
国庆假期发生了两件小事,其一是我默默度过 35 周岁生日,其二是玩了下grafana `并在节后第一天被工程师 M 称赞:相当专业. 1.我为什么要玩 grafana 呢? 数月前我提交了一份数据后台 ...
- ServletContextInitializer添加 servlet filter listener
ServletContextInitializer添加 servlet filter listener https://www.cnblogs.com/pomer-huang/p/9639322.ht ...
- 2019三六零 java面试笔试题 (含面试题解析)
本人3年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.360等公司offer,岗位是Java后端开发,最终选择去了三六零. 面试了很多家公司,感觉大部分公司考察的点都差 ...
- Mybatis中使用association及collection进行自关联示例(含XML版与注解版)
XML版本: 实体类: @Data @ToString @NoArgsConstructor public class Dept { private Integer id; private Strin ...