Я создал следующую функцию с намерением применить две итерации lapply.Применение вложенных функций сложения
«x» здесь будет список из 10 кадров данных, каждый из которых имеет первый столбец в качестве переменной ответа.
Во-первых, я применяю lapply для запуска 'lm' на этих данных, передавая список, который их содержит, и указывая первый столбец как ответ и выполняющий lm для всех переменных в соответствующем фрейме данных.
Затем я хочу создать столбец в каждом кадре данных, который будет содержать установленные значения после применения «lm».
runit<-function(x){
{lapply(x,function(data){lm(reformulate(termlabels=".",
response=names(data)[1]),data)})
}
{
lapply(x,function(data){data$fitted<-fitted(data)})
}
}
Это не работает. Я получаю 'нуль' в качестве выходного сигнала, как только это будет работать
runit(listcontainingdataframes)
[[1]]
NULL
[[2]]
NULL
[[3]]
NULL
[[4]]
NULL
Спасибо, это не работает, к сожалению. Я получаю сообщение об ошибке «Ошибка в' $ <-. Data.frame' ('* tmp *', "result", value = c (-4.29725218642032,: замена имеет 29 строк, данные имеют 53 " – oivemaria
Я тестировал код для выборки данных.Это работает.Может быть проблема с вашим фреймом данных. – Metrics
Да, я проверяю, что есть один dataframe, для которого эта ошибка проходит. Я пытаюсь выяснить, почему – oivemaria