接口 StorelessUnivariateStatistic

所有超级接口:
DoubleConsumer, MathArrays.Function, UnivariateStatistic
所有已知实现类:
AbstractStorelessUnivariateStatistic, GeometricMean, Kurtosis, Max, Mean, Min, Product, PSquarePercentile, RandomPercentile, SecondMoment, Skewness, StandardDeviation, Sum, SumOfLogs, SumOfSquares, Variance

public interface StorelessUnivariateStatistic extends UnivariateStatistic, DoubleConsumer
Extends the definition of UnivariateStatistic with increment(double) and incrementAll(double[]) methods for adding values and updating internal state.

This interface is designed to be used for calculating statistics that can be computed in one pass through the data without storing the full array of sample values.

Note: unless otherwise stated, the UnivariateStatistic.evaluate(double[]) and evaluate(double[], int, int) methods do NOT alter the internal state of the respective statistic.

  • 方法概要

    修饰符和类型
    方法
    说明
    default void
    accept(double value)
    void
    clear()
    清除统计数据的内部状态
    copy()
    返回具有相同内部状态的统计数据副本
    default double
    evaluate(double[] values, int begin, int length)
    返回计算输入数组中指定条目上的统计数据结果
    long
    getN()
    返回已添加的值的数量
    double
    返回统计数据的当前值
    void
    increment(double d)
    更新统计数据的内部状态以反映新值的添加
    default void
    incrementAll(double[] values)
    更新统计数据的内部状态以反映值数组中所有值的添加
    default void
    incrementAll(double[] values, int start, int length)
    更新统计数据的内部状态以反映值数组中指定部分的值的添加

    从接口继承的方法 java.util.function.DoubleConsumer

    andThen

    从接口继承的方法 org.hipparchus.stat.descriptive.UnivariateStatistic

    evaluate
  • 方法详细资料

    • evaluate

      default double evaluate(double[] values, int begin, int length) throws MathIllegalArgumentException
      返回计算输入数组中指定条目上的统计数据结果

      默认实现会创建此 StorelessUnivariateStatistic 实例的副本,对其调用 clear(),然后使用输入数组的指定部分调用 incrementAll(double[]),最后使用 getResult() 计算返回值。

      请注意,此实现不会更改统计数据的内部状态。

      实现可以使用更高效和可能更准确的实现覆盖此方法,直接使用输入数组进行计算。

      指定者:
      evaluate 在接口中 MathArrays.Function
      指定者:
      evaluate 在接口中 UnivariateStatistic
      参数:
      values - 输入数组
      begin - 要包括的第一个元素的索引
      length - 要包括的元素数量
      返回:
      应用于包含数组条目的统计数据值
      抛出:
      MathIllegalArgumentException - 如果数组为null或索引无效
      另请参阅:
    • increment

      void increment(double d)
      更新统计数据的内部状态以反映新值的添加
      参数:
      d - 新值
    • accept

      default void accept(double value)
      指定者:
      accept 在接口中 DoubleConsumer
    • incrementAll

      default void incrementAll(double[] values) throws MathIllegalArgumentException
      更新统计数据的内部状态以反映值数组中所有值的添加。首先不清除统计数据 -- 即,值会逐渐添加到数据集中。

      默认实现以自然方式委托给 incrementAll(double[], int, int)

      参数:
      values - 包含要添加的新值的数组
      抛出:
      MathIllegalArgumentException - 如果数组为null
    • incrementAll

      default void incrementAll(double[] values, int start, int length) throws MathIllegalArgumentException
      更新统计数据的内部状态以反映值数组中指定部分的值的添加。首先不清除统计数据 -- 即,值会逐渐添加到数据集中。

      默认实现只是在指定输入数组的部分上循环调用 increment(double)

      参数:
      values - 包含要添加的新值的数组
      start - 要添加的第一个值的数组索引
      length - 要添加的元素数量
      抛出:
      MathIllegalArgumentException - 如果数组为null或索引
    • getResult

      double getResult()
      返回统计数据的当前值
      返回:
      统计数据的值,如果已清除或刚实例化,则为 Double.NaN
    • getN

      long getN()
      返回已添加的值的数量
      返回:
      值的数量
    • clear

      void clear()
      清除统计数据的内部状态
    • copy

      返回具有相同内部状态的统计数据副本
      指定者:
      copy 在接口中 UnivariateStatistic
      返回:
      统计数据的副本