Извлечение значений переменных, использующих цикл For в R - PullRequest
1 голос
/ 24 мая 2019

У меня 102 различных модели в R, которые называются "model1", "model2", "model3" ... "model102", которые закодированы в виде списков.Каждый из них имеет точно такую ​​же структуру, где 9-й элемент получает значение AIC.Я пытаюсь использовать цикл for (или любой другой метод), который может извлечь значение AIC для каждой из моих моделей, упорядочить значения AIC от минимального к максимальному и поместить упорядоченные значения в новый фрейм данных.

У меня есть опыт использования Python, и поэтому я изначально хотел использовать Regex для последовательного объединения строки и числа в цикле for.К сожалению, у меня мало опыта работы с R, и я не уверен, как извлечь значение AIC из каждой переменной.

Есть мысли?Спасибо!

number <- seq(1,6,1)
modelList <- paste(name,number,sep = "")

for (i in 1:length(number)) {
  print (modelList[i]$AIC)
}

1 Ответ

0 голосов
/ 24 мая 2019
Опция

A base R будет заключаться в том, чтобы получить значения объектов в списке (при условии, что идентификаторы модели названы 'model1', 'model2', ..., 'model102'), проходить через list с помощью sapply, извлеките значения 'AIC', sort it и создайте 'data.frame' с одним столбцом

lst1 <- mget(paste0("model", 1:102))
aicV <- sapply(lst1, function(x) x$AIC)
d1 <- data.frame(aic = sort(aicV))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...