类 RegressionResults
java.lang.Object
org.hipparchus.stat.regression.RegressionResults
- 所有已实现的接口:
-
Serializable
多元线性回归模型拟合的结果。
- 另请参阅:
-
构造器概要
构造器说明RegressionResults
(double[] parameters, double[][] varcov, boolean isSymmetricCompressed, long nobs, int rank, double sumy, double sumysq, double sse, boolean containsConstant, boolean copyData) 回归结果的构造函数。 -
方法概要
修饰符和类型方法说明double
返回调整后的R平方统计量,由公式 \( R_\mathrm{adj}^2 = 1 - \frac{\mathrm{SSR} (n - 1)}{\mathrm{SSTO} (n - p)} \) 定义,其中SSR是残差平方和,SSTO是总平方和,n是观测次数,p是估计的参数个数(包括截距)。double
getCovarianceOfParameters
(int i, int j) 返回回归参数i和j之间的协方差。double
返回与回归模型相关的平方误差和(SSE)。double
返回平方误差除以自由度,通常缩写为MSE。long
getN()
返回添加到回归模型中的观测次数。int
返回模型中估计的参数个数。double
getParameterEstimate
(int index) 返回给定索引处的回归器的参数估计。double[]
返回回归参数估计的副本。double
返回预测y值关于其均值的平方偏差和(等于y的均值)。double
返回多重决定系数,通常表示为r平方。double
getStdErrorOfEstimate
(int index) 返回索引处参数估计的标准误差,通常表示为s(bindex)。double[]
返回参数估计的标准误差,通常表示为s(bi)。double
返回y值关于其均值的平方偏差和。boolean
如果回归模型已计算包括截距,则返回true。
-
构造器详细资料
-
RegressionResults
public RegressionResults(double[] parameters, double[][] varcov, boolean isSymmetricCompressed, long nobs, int rank, double sumy, double sumysq, double sse, boolean containsConstant, boolean copyData) 回归结果的构造函数。- 参数:
-
parameters
- 一个带有回归斜率估计的双精度数组 -
varcov
- 方差协方差矩阵,存储为方阵或压缩格式 -
isSymmetricCompressed
- 一个标志,表示方差协方差矩阵以对称压缩格式存储 -
nobs
- 回归估计的观测次数 -
rank
- 回归中独立变量的数量 -
sumy
- 自变量的总和 -
sumysq
- 自变量平方的总和 -
sse
- 平方误差和 -
containsConstant
- true表示模型包含常数项,false表示模型不包含常数项 -
copyData
- 如果为true,则对所有输入数据进行深拷贝,如果为false,则仅复制引用,RegressionResults变为可变
-
-
方法详细资料
-
getParameterEstimate
返回给定索引处的回归器的参数估计。
冗余的回归器将设置其冗余标志,并且参数估计等于
Double.NaN
- 参数:
-
index
- 索引。 - 返回:
- 索引处回归器的参数估计。
- 抛出:
-
MathIllegalArgumentException
- 如果index
不在区间[0, 参数个数)
内。
-
getParameterEstimates
public double[] getParameterEstimates()返回回归参数估计的副本。
参数估计按数据的自然顺序返回。
冗余的回归器将设置其冗余标志,并且参数估计等于
Double.NaN
。- 返回:
- 参数估计数组,如果没有估计则为null
-
getStdErrorOfEstimate
返回索引处参数估计的标准误差,通常表示为s(bindex)。- 参数:
-
index
- 索引。 - 返回:
- 与索引处参数估计相关的标准误差。
- 抛出:
-
MathIllegalArgumentException
- 如果index
不在区间[0, 参数个数)
内。
-
getStdErrorOfEstimates
public double[] getStdErrorOfEstimates()返回参数估计的标准误差,通常表示为s(bi)。
如果设计矩阵存在问题,则冗余的回归器将被分配
Double.NaN
。- 返回:
- 与参数估计相关的标准误差数组,如果没有估计则为null
-
getCovarianceOfParameters
返回回归参数i和j之间的协方差。
如果设计矩阵存在问题,则包含冗余列的协方差将被分配
Double.NaN
。- 参数:
-
i
- 第i个回归参数。 -
j
- 第j个回归参数。 - 返回:
- 参数估计的协方差。
- 抛出:
-
MathIllegalArgumentException
- 如果i
或j
不在区间[0, 参数个数)
内。
-
getNumberOfParameters
public int getNumberOfParameters()返回模型中估计的参数个数。
这是回归器的最大数量,一些技术可能会删除冗余参数
- 返回:
- 回归器的数量,如果未估计则为-1
-
getN
public long getN()返回添加到回归模型中的观测次数。- 返回:
- 观测次数,如果错误条件阻止估计则为-1
-
getTotalSumSquares
public double getTotalSumSquares()- 返回:
- y值的平方偏差和
-
getRegressionSumSquares
public double getRegressionSumSquares()返回预测y值关于其均值的平方偏差和。
这通常缩写为SSR或SSM。它被定义为SSM,这里
前提条件:
- 在调用此方法之前必须添加至少两个观测(至少具有两个不同的x值)。如果在可以估计模型之前调用此方法,则返回
Double.NaN
。
- 返回:
- 预测y值的平方偏差和
- 在调用此方法之前必须添加至少两个观测(至少具有两个不同的x值)。如果在可以估计模型之前调用此方法,则返回
-
getErrorSumSquares
public double getErrorSumSquares()返回与回归模型相关的平方误差和(SSE)。
返回值受限于非负 - 即,如果由于舍入误差计算公式返回负结果,则返回0。
前提条件:
- 在调用此方法之前必须添加
numberOfParameters
个数据对。如果在可以估计模型之前调用此方法,则返回Double,NaN
。
- 返回:
- 与回归模型相关的平方误差和
- 在调用此方法之前必须添加
-
getMeanSquareError
public double getMeanSquareError()返回平方误差和除以自由度,通常缩写为MSE。
如果模型中少于numberOfParameters + 1个数据对,或者
x
中没有变化,则返回Double.NaN
。- 返回:
- y值的平方偏差和
-
getRSquared
public double getRSquared()返回多重决定系数,通常表示为 r-square。
前提条件:
- 在调用此方法之前,必须添加至少 numberOfParameters 个观测值(至少有 numberOfParameters 个不同的 x 值)。如果在可以估计模型之前调用此方法,则返回
Double.NaN
。
- 返回:
- r-square,一个取值范围在 [0, 1] 的双精度数
- 在调用此方法之前,必须添加至少 numberOfParameters 个观测值(至少有 numberOfParameters 个不同的 x 值)。如果在可以估计模型之前调用此方法,则返回
-
getAdjustedRSquared
public double getAdjustedRSquared()返回调整后的 R-平方统计量,由公式 \( R_\mathrm{adj}^2 = 1 - \frac{\mathrm{SSR} (n - 1)}{\mathrm{SSTO} (n - p)} \) 定义,其中 SSR 是残差平方和,SSTO 是总平方和,n 是观测数,p 是估计的参数数(包括截距)。
如果回归是在没有截距项的情况下估计的,则返回
1 - (1 -
getRSquared()
) * (n / (n - p))- 返回:
- 调整后的 R-平方统计量
-
hasIntercept
public boolean hasIntercept()如果回归模型已经包括截距,则返回 true。在这种情况下,截距的系数是参数估计
的第一个元素。- 返回:
- 如果模型有截距项,则返回 true
-