我使用示例数据来提问。
seed(1)
X <- data.frame(matrix(rnorm(200), nrow=20))
我想每次选择10个随机行而不进行替换,并进行多元回归。我试过了
hi=X[sample(1:20,10),]
MR1<-lm(X10~., data=hi)
R1<-summary(MR1)$r.squared #extract the R squared
是否可以创建25个这样的数据集,每次采样10行。最后,我想存储采样数据集并进行多元回归,并从25个这样的模型中提取r平方值。
答案 0 :(得分:2)
您可以使用lapply
:
set.seed(1)
X <- data.frame(matrix(rnorm(200), nrow=20))
n <- 25
res <- lapply(1:n,
function(i) {
samples <- sample(1:20,10)
hi=X[samples,]
MR1<-lm(X10~., data=X)
R1<-summary(MR1)$r.squared
return(list(Samples=samples,Hi=hi,MR1=MR1,R1=R1))
})