math组件用法实例

import org.apache.commons.math.stat.descriptive.moment.GeometricMean;
import org.apache.commons.math.stat.descriptive.moment.Kurtosis;
import org.apache.commons.math.stat.descriptive.moment.Mean;
import org.apache.commons.math.stat.descriptive.moment.Skewness;
import org.apache.commons.math.stat.descriptive.moment.StandardDeviation;
import org.apache.commons.math.stat.descriptive.moment.Variance;
import org.apache.commons.math.stat.descriptive.rank.Max;
import org.apache.commons.math.stat.descriptive.rank.Min;
import org.apache.commons.math.stat.descriptive.rank.Percentile;
import org.apache.commons.math.stat.descriptive.summary.Product;
import org.apache.commons.math.stat.descriptive.summary.Sum;
import org.apache.commons.math.stat.descriptive.summary.SumOfSquares;

public class TestMathUserage {
 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 };
  /*
   * System.out.println( "min: " + StatUtils.min( values ) );
   * System.out.println( "max: " + StatUtils.max( values ) );
   * System.out.println( "mean: " + StatUtils.mean( values ) ); // Returns
   * the arithmetic mean of the entries in the input array, or Double.NaN
   * if the array is empty System.out.println( "product: " +
   * StatUtils.product( values ) ); //Returns the product of the entries
   * in the input array, or Double.NaN if the array is empty.
   * System.out.println( "sum: " + StatUtils.sum( values ) ); //Returns
   * the sum of the values in the input array, or Double.NaN if the array
   * is empty. System.out.println( "variance: " + StatUtils.variance(
   * values ) ); // Returns the variance of the entries in the input
   * array, or Double.NaN if the array is empty.
   */

  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 = new Percentile(); // 百分位数
  GeometricMean geoMean = new GeometricMean(); // 几何平均数,n个正数的连乘积的n次算术根叫做这n个数的几何平均数
  Skewness skewness = new Skewness(); // Skewness();
  Kurtosis kurtosis = new Kurtosis(); // Kurtosis,峰度
  SumOfSquares sumOfSquares = new SumOfSquares(); // 平方和
  StandardDeviation StandardDeviation = new StandardDeviation();
  System.out.println("80 percentile value: "
    + percentile.evaluate(values, 80.0));
  System.out.println("geometric mean: " + 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));
 }
}
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值