Я пытаюсь заставить modelr::add_residuals
делать свое дело для фреймов данных, вложенных в столбец списка.Когда я пытаюсь unnest()
, я получаю сообщение "Ошибка в bind_rows".
Модель ввода - это биономный блеск с матричным откликом, который, кажется, является частью проблемы.
Вот пример:
library(tidyverse)
library(modelr)
library(doBy)
data(budworm)
fitter <- function(df, ...){
# fit binomial glm to matrix response
res <- glm(cbind(ndead, ntotal) ~ log(dose), data = df, family = binomial)
return(res)
}
# create nested data frames
bg <- budworm %>%
group_by(sex) %>%
nest()
bg %>%
mutate(fits = map(data, fitter),
res = map2(data, fits, add_residuals)) %>%
unnest(res)
И ошибка отunnest()
is:
Ошибка в bind_rows_ (x, .id): аргумент 4 должен быть длиной 6, а не 12
Я отмечаю, что add_predictions()
неесть эта проблема.
Мне интересно, связана ли проблема с матрицей в качестве ответа для glm (обычно для приложений типа анализа, как в примере с budworm).Единственная неопределенно похожая проблема, которую я нашел, касается пакета метлы здесь .Однако, похоже, что это связано и с unnest
, поскольку add_residuals()
отлично работает с фреймом данных, который не хранится в столбце списка.