【发布时间】:2023-03-22 18:42:01
【问题描述】:
如果我的问题看起来很简单或幼稚,我提前道歉,但我试图从概念上理解函数 simulate 的作用(即,我对它的逻辑感兴趣,与它是否被应用无关到 lm、lme 等)
假设我正在对以下数据进行简单的多元回归:
n <- 40
x1 <- rnorm(n, mean=3, sd=1)
x2 <- rnorm(n, mean=4, sd=1.25)
y <- 2*x1 + 3*x2 + rnorm(n, mean=2, sd=1)
mydata <- data.frame(x1, x2, y)
mod <- lm(y ~ x1 + x2, data=mydata)
函数simulate 应用于这种情况时会做什么?所以如果我这样做:
simulate(mod, nsim=2)
我得到的两个向量是什么?
本质上是不是类似做:
replicate(2, y + rnorm(n=length(y), mean="some value", sd="some other value"))
如果它类似于那个逻辑,那么“一些价值”和“一些其他价值”会是什么?他们会是mean(mod$residuals) 和sd(mod$residuals) 吗?还是实际残差的排列?还是完全不同的东西?
或者它正在做一些完全不同的事情?
如果有人能用简单的非技术术语解释/确认simulate 的工作原理,将不胜感激。
【问题讨论】:
-
您可以使用
stats:::simulate.lm查看源代码。但由于这更多是关于统计概念,我可能会推荐 Cross Validated 而不是 Stack Overflow。