Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
残差协方差矩阵R中的协方差函数_R_Covariance - Fatal编程技术网

残差协方差矩阵R中的协方差函数

残差协方差矩阵R中的协方差函数,r,covariance,R,Covariance,我正在寻找R中的一个函数来计算OLS回归残差的协方差矩阵。我无法确定cov()函数在计算协方差矩阵时是否考虑了模型的自由度和模型中的数据点数量 更新:我试图做一个优化过程,最小化OLS回归的残差。通常,无偏OLS残差方差由以下公式给出:E(RSS/N−p-1)=σ²。其中RSS是残差平方和,N是观测数,p是系数数。我想看看计算协方差矩阵时是否需要这样的校正,如果需要,R中是否有函数可以这样做?在使用lm函数运行回归后,您可以对summary对象使用vcov()函数 下面是一个使用mtcars数据

我正在寻找R中的一个函数来计算OLS回归残差的协方差矩阵。我无法确定
cov()
函数在计算协方差矩阵时是否考虑了模型的自由度和模型中的数据点数量

更新:我试图做一个优化过程,最小化OLS回归的残差。通常,无偏OLS残差方差由以下公式给出:E(RSS/N−p-1)=σ²。其中RSS是残差平方和,N是观测数,p是系数数。我想看看计算协方差矩阵时是否需要这样的校正,如果需要,R中是否有函数可以这样做?

在使用
lm
函数运行回归后,您可以对summary对象使用
vcov()
函数

下面是一个使用mtcars数据集的示例:

 vcov(summary(lm(mpg ~ disp + wt + cyl + carb, data = mtcars)))

            (Intercept)          disp          wt          cyl        carb
(Intercept)  8.55669203  0.0293259201 -2.08615285 -1.491482503  0.29243798
disp         0.02932592  0.0001528819 -0.00919016 -0.006308583  0.00142303
wt          -2.08615285 -0.0091901600  1.12326190  0.137990642 -0.09283828
cyl         -1.49148250 -0.0063085825  0.13799064  0.454163264 -0.10918226
carb         0.29243798  0.0014230298 -0.09283828 -0.109182256  0.12568429
这是编写语法的另一种方式:

model <- lm(mpg ~ disp + wt + cyl + carb, data = mtcars)

modelsum <- summary(model)

vcov(modelsum)

模型LR模型的残差是一个向量,协方差矩阵只是一个定标器。也许你在寻找@Reza评论中提到的其他东西;OLS的残差通常被认为是独立的、同方差的,因此
diag(rep(sigma(model)^2,nobs(model))
将(有点微不足道)成为答案。你能更具体一点/为你试图解决的问题提供更多的背景吗?或者您正在谈论参数采样分布的估计协方差矩阵,即
vcov()
?您可以尝试在