类 StorelessCovariance
java.lang.Object
org.hipparchus.stat.correlation.Covariance
org.hipparchus.stat.correlation.StorelessCovariance
不需要将输入数据存储在内存中的协方差实现。协方差矩阵的大小在构造函数中指定。通过调用incrementRow()或increment Covariance()逐步更新矩阵的特定元素。
此类基于Philippe Pébay撰写的一篇论文:Robust, One-Pass Parallel Computation of Covariances and Arbitrary-Order Statistical Moments的公式,2008年,技术报告SAND2008-6212,Sandia国家实验室。
注意:基础协方差矩阵是对称的,因此只存储和更新矩阵的上三角部分。
-
构造器概要
构造器说明StorelessCovariance
(int dim) 创建具有给定维度的偏差校正协方差矩阵。StorelessCovariance
(int dim, boolean biasCorrected) 创建具有给定行数和列数以及指定偏差校正的协方差矩阵。 -
方法概要
修饰符和类型方法说明void
将sc
附加到此,实际上将sc
中的计算与此聚合。double
getCovariance
(int xIndex, int yIndex) 获取协方差矩阵中单个元素的协方差。返回协方差矩阵double[][]
getData()
将协方差矩阵作为二维数组返回。int
getN()
由于双变量观测值的数量不必对不同的协变量对相同,此Covariance
方法不受StorelessCovariance
支持 - 即,如在Covariance.getN()
中定义的N是未定义的。void
increment
(double[] data) 使用一行数据增加协方差矩阵。从类继承的方法 org.hipparchus.stat.correlation.Covariance
computeCovarianceMatrix, computeCovarianceMatrix, computeCovarianceMatrix, computeCovarianceMatrix, covariance, covariance
-
构造器详细资料
-
StorelessCovariance
public StorelessCovariance(int dim) 创建具有给定维度的偏差校正协方差矩阵。- 参数:
-
dim
- 方形协方差矩阵的维度
-
StorelessCovariance
public StorelessCovariance(int dim, boolean biasCorrected) 创建具有给定行数和列数以及指定偏差校正的协方差矩阵。- 参数:
-
dim
- 协方差矩阵的维度 -
biasCorrected
- 如果为true
,则协方差估计值将校正偏差,即分母中为n-1,否则没有偏差校正,即分母中为n。
-
-
方法详细资料
-
getCovariance
获取协方差矩阵中单个元素的协方差。- 参数:
-
xIndex
- 协方差矩阵中的行索引 -
yIndex
- 协方差矩阵中的列索引 - 返回:
- 给定元素的协方差
- 抛出:
-
MathIllegalArgumentException
- 如果单元格中的观测次数小于2
-
increment
使用一行数据增加协方差矩阵。- 参数:
-
data
- 表示一行数据的数组。 - 抛出:
-
MathIllegalArgumentException
- 如果rowData
的长度与协方差矩阵不匹配
-
append
- 参数:
-
sc
- 外部计算的StorelessCovariance,要添加到此 - 抛出:
-
MathIllegalArgumentException
- 如果sc的维度与此不匹配
-
getCovarianceMatrix
返回协方差矩阵- 覆盖:
-
getCovarianceMatrix
在类中Covariance
- 返回:
- 协方差矩阵
- 抛出:
-
MathIllegalArgumentException
- 如果单元格中的观测次数小于2
-
getData
将协方差矩阵作为二维数组返回。- 返回:
- 一个二维double数组,包含协方差值
- 抛出:
-
MathIllegalArgumentException
- 如果单元格的观测次数小于2
-
getN
由于双变量观测值的数量不必对不同的协变量对相同,此Covariance
方法不受StorelessCovariance
支持 - 即,如在Covariance.getN()
中定义的N是未定义的。- 覆盖:
-
getN
在类中Covariance
- 返回:
-
由于此实现始终抛出
MathRuntimeException
,因此没有返回值 - 抛出:
-
MathRuntimeException
- 在所有情况下
-