Nothing
## ----include = FALSE------------------------------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
error = FALSE
)
## ----setup----------------------------------------------------------------------------------------
library(eatGADS)
data_path <- system.file("extdata", "multipleChoice.sav", package = "eatGADS")
gads <- import_spss(data_path)
# Show example data set
gads
## ----recode2NA------------------------------------------------------------------------------------
gads <- recode2NA(gads, value = "")
## ----lookup---------------------------------------------------------------------------------------
lookup <- createLookup(GADSdat = gads, recodeVars = "stringvar", sort_by = 'value',
addCols = c("language", "language2", "language3"))
lookup
## ----lookup export, eval=FALSE--------------------------------------------------------------------
# # write lookup table to Excel
# eatAnalysis::write_xlsx(lookup, "lookup_forcedChoice.xlsx")
## ----lookup import export, eval=FALSE-------------------------------------------------------------
# # write lookup table to Excel
# eatAnalysis::write_xlsx(lookup, "lookup_multipleChoice.xlsx")
#
# ### perform recodes in Excel sheet!
#
# # read lookup table back to R
# lookup <- readxl::read_xlsx("lookup_multipleChoice.xlsx")
# lookup
## ----editing lookup, echo = FALSE-----------------------------------------------------------------
lookup$language <- c(NA, NA, "English", "German", "German",
"Polish", -96, "English", "German", "Polish")
lookup$language2 <- c(NA, NA, "Polish", NA, NA,
"Italian", -96, "Italian", "Polish", NA)
lookup$language3 <- c(NA, NA, "Italian", NA, NA,
"German", -96, NA, NA, NA)
lookup
## ----integrate the lookup table-------------------------------------------------------------------
gads_string <- applyLookup_expandVar(GADSdat = gads, lookup = lookup)
gads_string$dat
## ----label missings from lookup table-------------------------------------------------------------
for(nam in paste0("stringvar_", 1:3)) {
gads_string <- changeValLabels(gads_string, varName = nam,
value = -96, valLabel = "Missing: Not codeable")
gads_string <- changeMissings(gads_string, varName = nam,
value = -96, missings = "miss")
}
gads_string$labels
## ----named character vector-----------------------------------------------------------------------
value_string <- c(lookup$language, lookup$language2, lookup$language3)
named_char_vec <- matchValues_varLabels(GADSdat = gads_string,
mc_vars = c("mcvar1", "mcother"),
values = value_string,
label_by_hand = c("other"="mcother"))
named_char_vec
## ----collapse-------------------------------------------------------------------------------------
gads_string2 <- collapseMultiMC_Text(GADSdat = gads_string, mc_vars = named_char_vec,
text_vars = c("stringvar_1", "stringvar_2", "stringvar_3"),
mc_var_4text = "mcother", var_suffix = "_r",
label_suffix = "(recoded)",
invalid_miss_code = -98,
invalid_miss_label = "Missing: By intention",
notext_miss_code = -99,
notext_miss_label = "Missing: By intention")
gads_string2$dat
## ----remove2NAchar--------------------------------------------------------------------------------
gads_string3 <- remove2NAchar(GADSdat = gads_string2,
vars = c("stringvar_1_r", "stringvar_2_r", "stringvar_3_r"),
max_num = 2, na_value = -97,
na_label = "missing: excessive answers")
gads_string3$dat
## ----multiChar2fac--------------------------------------------------------------------------------
gads_numeric <- multiChar2fac(GADSdat = gads_string3, vars = c("stringvar_1_r", "stringvar_2_r"),
var_suffix = "_r", label_suffix = "(recoded)")
gads_numeric$dat
gads_final <- gads_numeric
extractMeta(gads_final)[, c("varName", "value", "valLabel", "missings")]
## ----remove vars----------------------------------------------------------------------------------
gads_final2 <- removeVars(gads_final, vars = c("stringvar_1", "stringvar_2", "stringvar_3",
"stringvar_1_r", "stringvar_2_r"))
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.