library(flextable) library(dplyr) library(dlookr) library(ggplot2) id_dataset <- "$id_dataset$" variable_row <- "$variable_row$" variable_col <- "$variable_col$" marginal <- $marginal$ marginal_type <- "$marginal_type$" plot_flag <- $plot_flag$
htmltools::h3( BitStat::translate("범주형 변수 분할표") )
variable <- glue::glue("{variable_row} - {variable_col}") htmltools::h4( translate(glue::glue("{variable}의 분포 현황"), "kr", variable) ) %>% as.character() %>% cat() .data <- get("list_datasets", envir = .BitStatEnv) %>% "[["(id_dataset) %>% "[["("dataset") if (!marginal_type %in% "sum") { marginal <- FALSE } comp_category <- .data %>% select(all_of(c(variable_row, variable_col))) %>% dlookr::compare_category() stat <- summary(comp_category, verbose = FALSE, marginal = marginal) if (marginal_type == "pct_row") { tab <- stat$table[[1]] %>% prop.table(margin = 1) %>% addmargins(margin = 2) %>% "*"(100) %>% round(2) colnames(tab)[NCOL(tab)] <- "<Total>" tab <- tab %>% as.data.frame.matrix() %>% tibble::rownames_to_column(variable_row) } else if (marginal_type == "pct_col") { tab <- stat$table[[1]] %>% prop.table(margin = 2) %>% addmargins(margin = 1) %>% "*"(100) %>% round(2) rownames(tab)[NROW(tab)] <- "<Total>" tab <- tab %>% as.data.frame.matrix() %>% tibble::rownames_to_column(variable_row) } else if (marginal_type == "pct_tot") { tab <- stat$table[[1]] %>% prop.table() %>% addmargins(margin = c(1, 2)) %>% "*"(100) %>% round(2) rownames(tab)[NROW(tab)] <- "<Total>" colnames(tab)[NCOL(tab)] <- "<Total>" tab <- tab %>% as.data.frame.matrix() %>% tibble::rownames_to_column(variable_row) } else { tab <- stat$table[[1]] %>% as.data.frame.matrix() %>% tibble::rownames_to_column(variable_row) } tab %>% flextable::flextable() %>% flextable::add_header_row( top = TRUE, values = c("", variable_col), colwidths = c(1, NCOL(tab) - 1) ) %>% flextable::theme_box() %>% flextable::align(i = 1, align = "left", part = "header") %>% flextable::flextable_to_rmd() html_br() htmltools::h4( translate("카이-제곱 독립성검정") ) %>% as.character() %>% cat() tab_chisq <- stat[["chisq"]] names(tab_chisq) <- c( translate("행 변수"), translate("열 변수"), translate("통계량"), translate("카이-제곱 독립성검정 통계량"), translate("자유도") ) tab_chisq %>% flextable::flextable() %>% flextable::flextable_to_rmd() html_br()
if (plot_flag) { htmltools::br() htmltools::h3( BitStat::translate("범주형 변수 플롯") ) }
if (plot_flag) { plot(comp_category) html_br() }
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.