flat_table {sjmisc} | R Documentation |
Flat (proportional) tables
Description
This function creates a labelled flat table or flat proportional (marginal) table.
Usage
flat_table(
data,
...,
margin = c("counts", "cell", "row", "col"),
digits = 2,
show.values = FALSE,
weights = NULL
)
Arguments
data |
A data frame. May also be a grouped data frame (see 'Note' and 'Examples'). |
... |
One or more variables of |
margin |
Specify the table margin that should be computed for proportional
tables. By default, counts are printed. Use |
digits |
Numeric; for proportional tables, |
show.values |
Logical, if |
weights |
Bare name, or name as string, of a variable in |
Value
An object of class ftable
.
Note
data
may also be a grouped data frame (see group_by
)
with up to two grouping variables. Cross tables are created for each subgroup then.
See Also
frq
for simple frequency table of labelled vectors.
Examples
data(efc)
# flat table with counts
flat_table(efc, e42dep, c172code, e16sex)
# flat table with proportions
flat_table(efc, e42dep, c172code, e16sex, margin = "row")
# flat table from grouped data frame. You need to select
# the grouping variables and at least two more variables for
# cross tabulation.
library(dplyr)
efc %>%
group_by(e16sex) %>%
select(e16sex, c172code, e42dep) %>%
flat_table()
efc %>%
group_by(e16sex, e42dep) %>%
select(e16sex, e42dep, c172code, n4pstu) %>%
flat_table()
# now it gets weird...
efc %>%
group_by(e16sex, e42dep) %>%
select(e16sex, e42dep, c172code, n4pstu, c161sex) %>%
flat_table()