output$tab_1_table_purpose_IPD <- renderFormattable({
req(patients_filter())
req(patients_filter() %>% filter(ipdopd == "Inpatient") %>% nrow() > 1)
dta <- patients_filter() %>%
mutate(Year = year(surdate)) %>%
group_by(ipdopd, Year, typeind_cat) %>%
count() %>%
ungroup() %>%
filter(ipdopd == "Inpatient") %>%
select(-ipdopd) %>%
pivot_wider(names_from = typeind_cat, values_from = n)
cols <- c(Prophylaxis = 0, Treatment = 0, Unknown = 0)
dta <- add_column(dta, !!!cols[setdiff(names(cols), names(dta))]) %>%
mutate(`% Treatment` = round(100*Treatment / (Prophylaxis + Treatment), 1))
formattable(dta, list(
area(col = `% Treatment`) ~ proportion_bar("#e7d4e8")
))
})
output$tab_1_table_purpose_OPD <- renderFormattable({
req(patients_filter())
req(patients_filter() %>% filter(ipdopd == "Outpatient") %>% nrow() > 1)
dta <- patients_filter() %>%
mutate(Year = year(surdate)) %>%
group_by(ipdopd, Year, typeind_cat) %>%
count() %>%
ungroup() %>%
filter(ipdopd == "Outpatient") %>%
select(-ipdopd) %>%
pivot_wider(names_from = typeind_cat, values_from = n)
cols <- c(Prophylaxis = 0, Treatment = 0, Unknown = 0)
dta <- add_column(dta, !!!cols[setdiff(names(cols), names(dta))]) %>%
mutate(`% Treatment` = round(100*Treatment / (Prophylaxis + Treatment), 1))
formattable(dta, list(
area(col = `% Treatment`) ~ proportion_bar("#fee0b6")
))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.