## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ## ----setup-------------------------------------------------------------------- library(tsg) ## ----------------------------------------------------------------------------- head(person_record) ## ----------------------------------------------------------------------------- person_record |> generate_frequency(sex) ## ----------------------------------------------------------------------------- person_record |> generate_frequency(sex, age, marital_status) ## ----------------------------------------------------------------------------- person_record |> generate_frequency( marital_status, top_n = 3 ) ## ----------------------------------------------------------------------------- person_record |> generate_frequency( marital_status, top_n = 3, top_n_only = TRUE ) ## ----------------------------------------------------------------------------- person_record |> generate_frequency(age, sort_value = FALSE) ## ----------------------------------------------------------------------------- person_record |> generate_frequency( sex, age, marital_status, sort_except = "age" # keep age in its natural order ) ## ----------------------------------------------------------------------------- person_record |> generate_frequency(employed, include_na = TRUE) # default person_record |> generate_frequency(employed, include_na = FALSE) ## ----------------------------------------------------------------------------- person_record |> generate_frequency( seeing, hearing, walking, remembering, self_caring, communicating, collapse_list = TRUE ) ## ----------------------------------------------------------------------------- person_record |> generate_frequency( sex, add_cumulative = TRUE, add_cumulative_percent = TRUE ) ## ----------------------------------------------------------------------------- person_record |> generate_crosstab(marital_status, sex) ## ----------------------------------------------------------------------------- person_record |> generate_crosstab( marital_status, sex, percent_by_column = TRUE ) ## ----------------------------------------------------------------------------- person_record |> generate_crosstab( sex, seeing, hearing, walking, remembering, self_caring, communicating ) ## ----------------------------------------------------------------------------- person_record |> generate_crosstab( marital_status, sex, position_total = "top" ) ## ----------------------------------------------------------------------------- person_record |> dplyr::group_by(sex) |> generate_frequency(marital_status) ## ----------------------------------------------------------------------------- person_record |> dplyr::group_by(sex) |> generate_crosstab(marital_status, employed) ## ----eval=FALSE--------------------------------------------------------------- # person_record |> # generate_frequency(sex) |> # write_xlsx(path = "table-sex.xlsx") ## ----eval=FALSE--------------------------------------------------------------- # person_record |> # generate_crosstab(marital_status, sex) |> # add_table_title("Marital Status by Sex") |> # add_table_subtitle("National Sample Survey, 2024") |> # add_source_note("Source: person_record dataset.") |> # add_footnote("Missing values are excluded from the denominator.") |> # write_xlsx(path = "table-marital-sex.xlsx") ## ----eval=FALSE--------------------------------------------------------------- # person_record |> # generate_frequency(sex) |> # write_xlsx( # path = "table-sex-styled.xlsx", # facade = get_tsg_facade("yolo") # ) ## ----eval=FALSE--------------------------------------------------------------- # tbl <- person_record |> # generate_crosstab(marital_status, sex) |> # add_table_title("Marital Status by Sex") |> # add_source_note("Source: person_record dataset") # # write_xlsx(tbl, path = "table.xlsx") # Excel # write_html(tbl, path = "table.html") # HTML (requires the gt package) # write_pdf(tbl, path = "table.pdf") # PDF (requires gt + webshot2) # write_docx(tbl, path = "table.docx") # Word (requires officer + flextable)