(при условии butterfly$inv.alt <- 1/butterfly$alt
)
Вы получаете сообщение об ошибке, потому что resample
не является списком пересчитанных data.frames, которые вы можете получить с помощью:
resample <- replicate(B, butterfly[sample(1:n, replace = TRUE),], simplify = FALSE)
Должно работать следующее:
re.model <- lapply(resample, lm, formula = Hk ~ inv.alt)
Чтобы извлечь коэффициенты из списка моделей, re.model$coef
работает. Правильный путь к коэффициентам: re.model[[1]]$coef
, re.model[[2]]$coef
, .... Вы можете получить их все с помощью следующего кода:
re.model.coef <- sapply(re.model, coef)
Тогда вы можете объединить его с наблюдаемыми коэффициентами:
estMat <- cbind(re.model.coef, model$coef)
На самом деле вы можете поместить их все в replicate
:
re.model.coef <- replicate(B, {
bf.rs <- butterfly[sample(1:n, replace = TRUE),]
coef(lm(formula = Hk ~ inv.alt, data = bf.rs))
})
estMat <- cbind(re.model.coef, model$coef)