diff --git a/R/min_grid.R b/R/min_grid.R index 3a58de4f1..4c3dab908 100644 --- a/R/min_grid.R +++ b/R/min_grid.R @@ -150,13 +150,29 @@ submod_and_others <- function(grid, fixed_args) { dplyr::summarize(max_val = max(..val, na.rm = TRUE)) %>% dplyr::ungroup() - min_grid_df <- - dplyr::full_join(fit_only, grid, by = fixed_args) %>% + if (utils::packageVersion("dplyr") >= "1.0.99.9000") { + min_grid_df <- + dplyr::full_join(fit_only, grid, by = fixed_args, multiple = "all") + } else { + min_grid_df <- + dplyr::full_join(fit_only, grid, by = fixed_args) + } + + min_grid_df <- min_grid_df %>% dplyr::filter(..val != max_val) %>% dplyr::group_by(!!!rlang::syms(fixed_args)) %>% dplyr::summarize(.submodels = list(tibble::lst(!!subm_nm := ..val))) %>% - dplyr::ungroup() %>% - dplyr::full_join(fit_only, by = fixed_args) %>% + dplyr::ungroup() + + if (utils::packageVersion("dplyr") >= "1.0.99.9000") { + min_grid_df <- min_grid_df %>% + dplyr::full_join(fit_only, by = fixed_args, multiple = "all") + } else { + min_grid_df <- min_grid_df %>% + dplyr::full_join(fit_only, by = fixed_args) + } + + min_grid_df <- min_grid_df %>% dplyr::rename(!!subm_nm := max_val) min_grid_df$.submodels <-