首页 > 解决方案 > 为什么我的系数的标准误差相同?

问题描述

我正在尝试运行一个模拟代码,并且在名为 par.est1 的矩阵中,我将系数 b1 和 b2 的标准误差保存在第 5 列和第 6 列中,但在 1000 次重复中恰好是完全相同的。谁能知道为什么会这样?也许这与我创建相关变量的方式有关?

这是代码:

set.seed(185736)
reps <- 1000 #repetitions
par.est1 <- matrix(NA, nrow=reps, ncol=6) 
b1 <- 4
b2 <- 5.8
n <- 26 
r <- 0.1

#Create correlated variables
library(MASS)
data <- mvrnorm(n=n, mu=c(0, 0), Sigma=matrix(c(1, r, r, 1), nrow=2), empirical=TRUE)

V1 = data[, 1]  # standard normal (mu=0, sd=1)
V2 = data[, 2]  

cor(V1, V2)  

for(i in 1:reps){
  Y <- V1*b1+V2*b2+rnorm(n,0,1) #The true DGP, with N(0,1) error
  model1 <- lm(Y~V1+V2) 
  vcv1 <- vcov(model1)

  par.est1[i,1] <- model1$coef[1] 
  par.est1[i,2] <- model1$coef[2] 
  par.est1[i,3] <- model1$coef[3]

  par.est1[i,4] <- sqrt(diag(vcv1)[1]) #SE 
  par.est1[i,5] <- sqrt(diag(vcv1)[2])
  par.est1[i,6] <- sqrt(diag(vcv1)[3])
}

谢谢你。

感谢用户2554330。

有什么方法可以使相关变量具有不同的均值和方差?

标签: rvariableslinear-regressiongeneratecorrelated

解决方案


推荐阅读