apache commons math 示例代码
apache commons Math是一组偏向科学计算为主的函数,主要是针对线性代数,数学分析,概率和统计等方面。
我虽然是数学专业毕业,当年也是抱着《数学分析》啃,但是好久不用,这些概念都开始生疏,写一点例子,仅作参考。
packagetest.ffm83.commons.math; importorg.apache.commons.math3.linear.Array2DRowRealMatrix; import org.apache.commons.math3.linear.LUDecomposition; importorg.apache.commons.math3.linear.RealMatrix; importorg.apache.commons.math3.stat.descriptive.moment.GeometricMean; importorg.apache.commons.math3.stat.descriptive.moment.Kurtosis; importorg.apache.commons.math3.stat.descriptive.moment.Mean; importorg.apache.commons.math3.stat.descriptive.moment.Skewness; importorg.apache.commons.math3.stat.descriptive.moment.StandardDeviation; importorg.apache.commons.math3.stat.descriptive.moment.Variance; import org.apache.commons.math3.stat.descriptive.rank.Max; importorg.apache.commons.math3.stat.descriptive.rank.Min; importorg.apache.commons.math3.stat.descriptive.rank.Percentile; importorg.apache.commons.math3.stat.descriptive.summary.Product; importorg.apache.commons.math3.stat.descriptive.summary.Sum; importorg.apache.commons.math3.stat.descriptive.summary.SumOfSquares; /** * 简单使用commons Math方法 * @author 范芳铭 */ public class MathUsage { 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 }; Min min = new Min(); Max max = new Max(); Mean mean = new Mean(); // 算术平均值 Product product = new Product();//乘积 Sum sum = new Sum(); Variance variance = new Variance();//方差 System.out.println("min: " +min.evaluate(values)); System.out.println("max: " +max.evaluate(values)); System.out.println("mean: " +mean.evaluate(values)); System.out.println("product:" + product.evaluate(values)); System.out.println("sum: " +sum.evaluate(values)); System.out.println("variance:" + variance.evaluate(values)); Percentile percentile = newPercentile(); // 百分位数 GeometricMean geoMean = newGeometricMean(); // 几何平均数,n个正数的连乘积的n次算术根叫做这n个数的几何平均数 Skewness skewness = new Skewness(); //Skewness(); Kurtosis kurtosis = new Kurtosis(); //Kurtosis,峰度 SumOfSquares sumOfSquares = newSumOfSquares(); // 平方和 StandardDeviation StandardDeviation =new StandardDeviation();//标准差 System.out.println("80 percentilevalue: " + percentile.evaluate(values,80.0)); System.out.println("geometricmean: " + geoMean.evaluate(values)); System.out.println("skewness:" + skewness.evaluate(values)); System.out.println("kurtosis:" + kurtosis.evaluate(values)); System.out.println("sumOfSquares:" + sumOfSquares.evaluate(values)); System.out.println("StandardDeviation: " +StandardDeviation.evaluate(values)); System.out.println("-------------------------------------"); // Create a real matrix with two rowsand three columns double[][] matrixData = { {1d,2d,3d},{2d,5d,3d}}; RealMatrix m = newArray2DRowRealMatrix(matrixData); System.out.println(m); // One more with three rows, twocolumns double[][] matrixData2 = { {1d,2d},{2d,5d}, {1d, 7d}}; RealMatrix n = newArray2DRowRealMatrix(matrixData2); // Note: The constructor copies the input double[][] array. // Now multiply m by n RealMatrix p = m.multiply(n); System.out.println("p:"+p); System.out.println(p.getRowDimension()); // 2 System.out.println(p.getColumnDimension()); // 2 // Invert p, using LUdecomposition RealMatrix pInverse = newLUDecomposition(p).getSolver().getInverse(); System.out.println(pInverse); } } 运行结果如下: min: 0.27333 max: 1.33 mean: 0.46269083333333333 product: 2.3429343978460972E-5 sum: 5.552289999999999 variance: 0.08757300031742428 80 percentile value: 0.5674000000000001 geometric mean: 0.4112886050879374 skewness: 2.670095445623868 kurtosis: 7.718241303328169 sumOfSquares: 3.5322966905000004 StandardDeviation: 0.2959273564870681 ------------------------------------- Array2DRowRealMatrix{{1.0,2.0,3.0},{2.0,5.0,3.0}} p:Array2DRowRealMatrix{{8.0,33.0},{15.0,50.0}} 2 2 Array2DRowRealMatrix{{-0.5263157895,0.3473684211},{0.1578947368,-0.0842105263}}
apache commons math 示例代码的更多相关文章
- 编写更少量的代码:使用apache commons工具类库
Commons-configuration Commons-FileUpload Commons DbUtils Commons BeanUtils Commons CLI Commo ...
- Apache Commons IO入门教程(转)
Apache Commons IO是Apache基金会创建并维护的Java函数库.它提供了许多类使得开发者的常见任务变得简单,同时减少重复(boiler-plate)代码,这些代码可能遍布于每个独立的 ...
- [转]Apache Commons IO入门教程
Apache Commons IO是Apache基金会创建并维护的Java函数库.它提供了许多类使得开发者的常见任务变得简单,同时减少重复(boiler-plate)代码,这些代码可能遍布于每个独立的 ...
- 【java】org.apache.commons.lang3功能示例
org.apache.commons.lang3功能示例 package com.simple.test; import java.util.Date; import java.util.Iterat ...
- Apache Commons CLI 开发命令行工具示例
概念说明Apache Commons CLI 简介 虽然各种人机交互技术飞速发展,但最传统的命令行模式依然被广泛应用于各个领域:从编译代码到系统管理,命令行因其简洁高效而备受宠爱.各种工具和系统都 提 ...
- 使用 Apache Commons CLI 开发命令行工具示例
Apache Commons CLI 简介 Apache Commons CLI 是 Apache 下面的一个解析命令行输入的工具包,该工具包还提供了自动生成输出帮助文档的功能. Apache Com ...
- 使用 Apache Commons CLI 解析命令行参数示例
很好的输入参数解析方法 ,转载记录下 转载在: https://www.cnblogs.com/onmyway20xx/p/7346709.html Apache Commons CLI 简介 Apa ...
- 上传文件代码报错,java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory
2018-09-11 11:11:08.235 ERROR 14352 --- [nio-8080-exec-5] o.a.c.c.C.[.[.[/].[dispatcherServlet] : ...
- Java Socket长连接示例代码
SocketListenerPusher.java代码如下: import java.io.IOException; import java.net.InetSocketAddress; import ...
随机推荐
- mmysql-最大链接数和最大并发数的区别
关于连接数和并发数的设置(针对Innodb引擎) 对于机器本身来说,进程数是说机器正在运行的进程数量,调出任务管理器就可以看到.连接数是指进程接收和发送数据的连接ip的数量.并发数是指进程同时发送数据 ...
- js 滚动的文字(走马灯)
// 滚动的文字 function marqueeScroll() { //var $target = $(".marquee_outer:visible"); if($(&quo ...
- mysql关于排序值的问题
- DataTable数据赋值给Model通用方法
注:该文属本人原创,今后项目中发现该方法存在BUG会实时更新,转载记得附上原文出处,方便大家获得最新代码. 相信大家在做项目中,经常会根据不同的表new各种不同的Model,当需要对Model进行实例 ...
- OC编码问题输出中文
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...
- Quartz2D 编程指南(二)变换、图案、阴影
概览 图形上下文 路径 颜色与颜色空间 变换 图案 阴影 渐变 透明层 Quartz 2D 中的数据管理 位图与图像遮罩 CoreGraphics 绘制 Layer 5.变换 简介 Quartz 2D ...
- Tyrion中文文档(含示例源码)
Tyrion是一个基于Python实现的支持多个WEB框架的Form表单验证组件,其完美的支持Tornado.Django.Flask.Bottle Web框架.Tyrion主要有两大重要动能: 表单 ...
- linux指定nologin用户执行命令
为了安全,使用nologin账号来运行程序, su -s /bin/bash -c "ls" www 这条命令到底做了什么呢?su -s 是指定shell,这里www用户是nolo ...
- buildroot--uboot&kernel&rootfs全编译工具
参考: http://www.crifan.com/files/doc/docbook/buildroot_intro/release/html/buildroot_intro.html https: ...
- jQuery初始化加载的实现
与jQuery事件模块的其他事件不同,其他事件是通过数据缓存实现的,而初始化事件,jQuery.ready则是通过回调函数列表实现的.$()的参数如果是函数就向回调函数列表中添加回调函数,同时为DOM ...