使用maths3函数进行简单的数据统计性描述;

使用场景:本地,直接运行就可以;

具体后面有个性化的需求,可以再修改~

  1. package com;
  2.  
  3. import org.apache.commons.lang.math.Range;
  4. import org.apache.commons.lang3.StringUtils;
  5. import org.apache.commons.math3.stat.StatUtils;
  6. import org.apache.commons.math3.stat.descriptive.moment.StandardDeviation;
  7. import org.apache.commons.math3.stat.descriptive.rank.Median;
  8.  
  9. /*
  10. * @description:简单的数据统计分析
  11. * */
  12.  
  13. public class MathYsf {
  14. public static void main(String[] args){
  15. double[] values = new double[] { 0.33, 1.33,0.27333, 0.3, 0.501,
  16. 0.444, 0.44, 0.34496, 0.33,0.3, 0.292, 0.667 };
  17. double[] values2 = new double[] { 0.89, 1.51,0.37999, 0.4, 0.701,
  18. 0.484, 0.54, 0.56496, 0.43,0.3, 0.392, 0.567 };
  19.  
  20. //计数
  21. System.out.println("计算样本个数为:" +values.length);
  22. //mean--算数平均数
  23. System.out.println("平均数:" + StatUtils.mean(values));
  24. //sum--和
  25. System.out.println("所有数据相加结果为:" + StatUtils.sum(values));
  26. //max--最小值
  27. System.out.println("最小值:" + StatUtils.min(values));
  28. //max--最大值
  29. System.out.println("最大值:" + StatUtils.max(values));
  30. //范围
  31. System.out.println("范围是:" + (StatUtils.max(values)-StatUtils.min(values)));
  32. //标准差
  33. StandardDeviation standardDeviation =new StandardDeviation();
  34. System.out.println("一组数据的标准差为:" + standardDeviation.evaluate(values));
  35. //variance--方差
  36. System.out.println("一组数据的方差为:" + StatUtils.variance(values));
  37. //median--中位数
  38. Median median= new Median();
  39. System.out.println("中位数:" + median.evaluate(values));
  40. //mode--众数
  41. double[] res = StatUtils.mode(values);
  42. System.out.println("众数:" + res[0]+","+res[1]);
  43. for(int i = 0;i<res.length;i++){
  44. System.out.println("第"+(i+1)+"个众数为:"+res[i]);
  45. }
  46. //geometricMean--几何平均数
  47. System.out.println("几何平均数为:" +StatUtils.geometricMean(values));
  48. //meanDifference-- 平均差,平均概率偏差
  49. System.out.println("平均差为:"+StatUtils.meanDifference(values, values2));
  50. //normalize--标准化
  51. double[] norm = StatUtils.normalize(values2);
  52. for(int i = 0;i<res.length;i++){
  53. System.out.println("第"+(i+1)+"个数据标准化结果为:" + norm[i]);
  54. }
  55. //percentile--百分位数
  56. System.out.println("从小到大排序后位于80%位置的数:" + StatUtils.percentile(values, 70.0));
  57. //populationVariance--总体方差
  58. System.out.println("总体方差为:" + StatUtils.populationVariance(values));
  59. //product--乘积
  60. System.out.println("所有数据相乘结果为:" + StatUtils.product(values));
  61. //sumDifference--和差
  62. System.out.println("两样本数据的和差为:" + StatUtils.sumDifference(values,values2));
  63. //sumLog--对数求和
  64. System.out.println("一组数据的对数求和为:" + StatUtils.sumLog(values));
  65. //sumSq--计算一组数值的平方和
  66. System.out.println("一组数据的平方和:" + StatUtils.sumSq(values));
  67. //varianceDifference --方差差异性。
  68. System.out.println("一组数据的方差差异性为:" + StatUtils.varianceDifference(values,values2,StatUtils.meanDifference(values, values2)));
  69. }
  70. }

个人认为,使用这些函数关键是知道他的公式和用法,能准确定位,有一些方法,我也找不到它的公式,只是罗列上了,欢迎批评指正~

使用Apache commons-maths3-3.6.1.jar包进行简单的数据统计分析(java)的更多相关文章

  1. IDEA中MAVEN项目打JAR包的简单方法

      Idea中为一般的非Web项目打Jar包是有自己的方法的,网上一搜就能查到很多. 但是如果是为Maven项目打Jar包,其实是很简单的,因为maven本身就有打Jar包的命令.   最简单的方法 ...

  2. 将项目打成jar包执行 在liunx上执行 java -xx.jar

    一:普通maven java项目 项目目录 pom.xml <?xml version="1.0" encoding="UTF-8"?> <p ...

  3. Android导入自定义的jar包时出现 E/AndroidRuntime(486): java.lang.NoClassDefFoundError错误

    把自定义的jar包放在Android的工程的libs目录下,运行程序,会出现一下错误: 10-10 08:34:06.479: E/dalvikvm(486): Could not find clas ...

  4. Java -cp 命令行引用多个jar包的简单写法(Windows、Linux

    1.Windows下用法 在Windows上,可以使用 用法:java your-jar-lib-folder/* your-main-class your-jar-lib-folder为存放一堆ja ...

  5. 使用C#利用cmd来调用java jar包获取其中的数据

    其实也很简单,就是在C#中构建一个Process,启动jar包,并且给jar包传递参数 因为我并没有怎么学过JAVA,所以只写了个很小的Demo,就是根据传入的参数获取对应的数据 以下是JAVA De ...

  6. [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 ...

  7. org.apache.hadoop.fs.FsUrlStreamHandlerFactory 在哪个jar包

    org.apache.hadoop.fs.FsUrlStreamHandlerFactory在org.apache.hadoop类中,org.apache.hadoop在hadoop安装目录下.

  8. IDEA 快速将spring boot项目打包成jar包,简单快速有效

    原文地址;https://blog.csdn.net/chen846262292/article/details/80701101  https://www.cnblogs.com/chrischen ...

  9. 从JAR包中如何读取数据文件

    还不是很懂.....待总结......

随机推荐

  1. 精通react之react-router4源码分析(100代码实现router功能)

    1.react-router4 是一个 react 组件 通过和 location / histroy 结合,来显示页面不同URL对应显示不同的组件 其中包含了三种路由.hash / boswer 等 ...

  2. nginx+upsync+consul 构建动态nginx配置系统

    参考: http://www.php230.com/weixin1456193048.html  [upsync模块说明.性能评测] https://www.jianshu.com/p/76352ef ...

  3. php 函数篇

    1.array_values($data); 注:将关联数组转化为索引数组 <?php $a=array("Name"=>"Bill"," ...

  4. 改變帳款性質別以利排序沖帳才不會有問題,把19->17,把12->17

    Cxrp400 應收 LET ls_sql = SELECT xrccdocno,xrccseq,xrcc001,xrca035,xrca014, , xrca015,xrca006,xrcc008, ...

  5. lcd12864菜单

    最近一段时间学习了一下lcd12864屏幕的驱动(本人使用的是带字库的st7920驱动芯片). 1.该屏幕可以是串行驱动,或者并行驱动. 2.该屏幕的显示分为2部分,文字显示区DDRAM,图像显示区G ...

  6. Windows 编译安装 nginx 服务器 + rtmp 模块

    有关博客: <Windows 编译安装 nginx 服务器 + rtmp 模块>.<Ubuntu 编译安装 nginx>.<Arm-Linux 移植 Nginx> ...

  7. WebRTC 入门教程(二)| WebRTC信令控制与STUN/TURN服务器搭建

    WebRTC 入门教程(二)| WebRTC信令控制与STUN/TURN服务器搭建 四月 4, 2019 作者:李超,音视频技术专家.本文首发于 RTC 开发者社区,欢迎在社区留言与作者交流. htt ...

  8. Mars Sample 使用说明

    Mars Sample 使用说明  https://github.com/Tencent/mars/wiki/Mars-sample-%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98 ...

  9. Java调用Http/Https接口(2)--HttpURLConnection/HttpsURLConnection调用Http/Https接口

    HttpURLConnection是JDK自身提供的网络类,不需要引入额外的jar包.文中所使用到的软件版本:Java 1.8.0_191. 1.服务端 参见Java调用Http接口(1)--编写服务 ...

  10. 类中__iter__与__next__的说明

    class Fab(object): def __init__(self ,max ): self.max =max self.n =0 self.a=0 self.b =1 def __iter__ ...