У меня есть две части кода: одна работает, другая нет. Может быть, у кого-то есть идеи, почему это не работает.
PS. Я знаю, что это не полностью воспроизводимый пример, но если это будет необходимо, я предоставлю один.
arima_cv = forecast_data_ini_split %>%
unnest(training_splits_for_cv_models) %>%
crossing(arima_models_for_cv %>% slice(17:18)) %>%
mutate(analysis_data = map(.x = splits, ~tk_analysis_fun(.x))) %>%
mutate(assessment_data = map(.x = splits, ~tk_assessment_fun(.x)))
Этот работает
good = arima_cv %>%
mutate(models = furrr::future_pmap(list(analysis_data, p, d, q, P, D, Q),
.f = ~Arima(y = ..1, order = c(..2, ..3, ..4), seasonal = c(..5, ..6, ..7), xreg = NULL,
include.mean = TRUE, include.drift = FALSE, method ="CSS-ML"))) %>%
mutate(models_metrics_ass = map2(.x = models, .y = assessment_data, ~accuracy_assessment_fun(.x, .y)))
Этот не
bad = arima_cv %>%
mutate(models = pmap(list(analysis_data, p, d, q, P, D, Q),
~possibly(Arima, otherwise = NULL )(y = ..1, order = c(..2, ..3, ..4), seasonal = c(..5, ..6, ..7), xreg = NULL,
include.mean = TRUE, include.drift = FALSE, method ="ML"))) %>%
mutate(models_metrics_ass = map2(.x = models, .y = assessment_data, ~accuracy_assessment_fun(.x, .y)))
Сообщение об ошибке:
Error in eval(expr, p) : the ... list contains fewer than 4 elements
Проблема с последней строкой кода:
mutate(models_metrics_ass = map2(.x = models, .y = assessment_data, ~accuracy_assessment_fun(.x, .y)))
Кажется, что, возможно, что-то изменится вывод модели, и я не могу сделать прогноз и точность подсчета.
Заранее спасибо, Сью