Skip to content

Commit 4ae4fb5

Browse files
committed
feat: shiny include column indicating in plot
1 parent 2018730 commit 4ae4fb5

File tree

1 file changed

+37
-21
lines changed

1 file changed

+37
-21
lines changed

app.R

Lines changed: 37 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,41 @@ load_forecast_data_raw <- function(forecaster) {
5151
# Have loading function use the cache.
5252
load_forecast_data <- memoise::memoise(load_forecast_data_raw, cache = cache)
5353

54+
#' create a data table for the shiny plot of the forecasters present
55+
#' @description
56+
prepare_forecaster_table <- function(selected_forecasters) {
57+
forecasters <- tar_read(forecaster_params_grid) %>%
58+
select(-id) %>%
59+
mutate(across(where(is.list), map, `%||%`, c(0, 7, 14))) %>%
60+
mutate(lags = paste(lags, sep = ",")) %>%
61+
group_by(parent_id) %>%
62+
mutate(ahead = toString(unique(ahead))) %>%
63+
ungroup() %>%
64+
distinct(parent_id, .keep_all = TRUE) %>%
65+
rename(name = parent_id) %>%
66+
select(name, everything())
67+
forecasters$present <- map_vec(paste0("score_", forecasters$name), \(x) x %in% selected_forecasters)
68+
return(forecasters)
69+
}
70+
71+
#' create a data table for the shiny plot of the ensembles present
72+
#' @description
73+
prepare_ensemble_table <- function(selected_forecasters) {
74+
forecasters <- tar_read(ensemble_forecasters) %>%
75+
select(-id) %>%
76+
group_by(parent_id) %>%
77+
mutate(ahead = toString(unique(ahead))) %>%
78+
ungroup() %>%
79+
distinct(parent_id, .keep_all = TRUE) %>%
80+
rename(name = parent_id) %>%
81+
mutate(ensemble_params = paste(ensemble_params, sep = ",")) %>%
82+
mutate(forecaster_ids = paste(forecaster_ids, sep = ",")) %>%
83+
select(name, everything()) %>%
84+
select(-forecasters)
85+
print(selected_forecasters)
86+
forecasters$present <- map_vec(paste0("ensemble_score_", forecasters$name), \(x) x %in% selected_forecasters)
87+
return(forecasters)
88+
}
5489
#### Adapted from shiny-eval.R from cmu-delphi/hospitalization-forecaster
5590

5691
shinyApp(
@@ -244,29 +279,10 @@ shinyApp(
244279
}
245280
})
246281
output$forecaster_table <- renderDataTable(
247-
tar_read(forecaster_params_grid) %>%
248-
select(-id) %>%
249-
mutate(across(where(is.list), map, `%||%`, c(0, 7, 14))) %>%
250-
mutate(lags = paste(lags, sep = ",")) %>%
251-
group_by(parent_id) %>%
252-
mutate(ahead = toString(unique(ahead))) %>%
253-
ungroup() %>%
254-
distinct(parent_id, .keep_all = TRUE) %>%
255-
rename(name = parent_id) %>%
256-
select(name, everything())
282+
prepare_forecaster_table(input$selected_forecasters)
257283
)
258284
output$ensemble_table <- renderDataTable(
259-
tar_read(ensemble_forecasters) %>%
260-
select(-id) %>%
261-
group_by(parent_id) %>%
262-
mutate(ahead = toString(unique(ahead))) %>%
263-
ungroup() %>%
264-
distinct(parent_id, .keep_all = TRUE) %>%
265-
rename(name = parent_id) %>%
266-
mutate(ensemble_params = paste(ensemble_params, sep = ",")) %>%
267-
mutate(forecaster_ids = paste(forecaster_ids, sep = ",")) %>%
268-
select(name, everything()) %>%
269-
select(-forecasters)
285+
prepare_ensemble_table(input$selected_forecasters)
270286
)
271287
}
272288
)

0 commit comments

Comments
 (0)