Я видел несколько подобных вопросов, но мои вопросы кажутся более простыми.Извлечение коэффициентов из списка объектов оценки
Я запускаю более сложную регрессию, чем моя MWE, и заканчиваю список объектов оценки. Мне было интересно, есть ли более элегантный способ извлечения коэффициентов списка, чем использование другого для цикла по числу или именам списка.
list.lm<-list()
for(i in 1:3) {
list.lm[[i]]<-lm(mpg~cyl+runif(32), data=mtcars)
}
Я знаю, что я могу использовать обратиться, чтобы получить coeffcients, но я не могу превратить этот
sapply(list.lm,coefficients)
или
t(sapply(list.lm, coefficients))
нормально, то я могу сделать
data.frame(iteration=seq(1,3),t(sapply(list.lm,coefficients)))
, который совпадает с моей петлей
results<-data.frame(iteration=numeric(),intercept=numeric(), cyl=numeric(), rand=numeric())
for(i in 1:3) {
results[i,]<-c(iteration=i,coefficients(list.lm[[i]]))
}
results
'vapply (list.lm, коэффициенты, цифровая (3))' – Barker
то будет в основном такие же, как lapply, что я уже есть. Кто-то предложил использовать транспонирование, но это исчезло –
Возможно, вам стоит подробно остановиться на том, что вы ищете. Мне кажется, что решение @ Barker принимает ваш код «результатов» и сводит его к одной строке кода, что намного эффективнее. –