checkbox
variablesRewrites the labelling of checkbox
variables from
Checked/Unchecked to Yes/No (or some other user-specified labelling).
recodeCheck(
df,
vars,
old = c("Unchecked", "Checked"),
new = c("No", "Yes"),
reverse = FALSE
)
A data frame, presumably retrieved from REDCap, though not a strict requirement.
Optional character vector of variables to convert. If left
missing, all of the variables in df
that are identified as
checkbox
variables are relabelled. See 'Details' for more about
identifying checkbox
variables.
A character vector to be passed to factor
.
This indicates the levels to be replaced and their order.
A character vector of labels to replace the values in
levels
. The first value becomes the reference value.
For convenience, if the user would prefer to reverse the
order of the elements in levels
and labels
,
simply set this to TRUE
.
Benjamin Nutter
checkbox
variables are not identified using the metadata
from the REDCap database. Instead, variables are scanned, and those
variables in which every value is in levels
are assumed to be
checkbox
variables.
Realistically, this could be used to relabel any set of factors with
identical labels, regardless of the data source. The number of labels is
not limited, but levels
and labels
should have the same length.
The actual code to perform this is not particularly difficult
(df[checkbox] <- lapply(df[checkbox], factor, levels=levels, labels=labels)
),
but checkbox
variables are common enough in REDCap
(and the Checked/Unchecked scheme so unpalatable) that a quick way to
replace the labels was highly desirable