#' Rescale 3-level good-bad evaluation.
#'
#' Rescale 3-level categorical variables
#' \code{"A good thing"}, \code{"Neither good nor bad"} and \code{"A bad thing"}.
#' This is a wrapper function around the the \code{\link{rescale_categories}} function.
#' @param column A column from a survey data frame where
#' level of being acceptable is recorded with only three levels.
#' @param from Defaults to \code{c("good", "none", "bad")}.
#' @param to Defaults to \code{c(1,0,-1)} )
#' @param na_labels Defaults to \code{c("NA","DK")}
#' @param exact_from Deafults to \code{TRUE}. If \code{FALSE} you can use the
#' partial matching, but beware that in this case, \code{"twenty"} will be replaced by
#' @param underscore Defaults to \code{TRUE} in which case factor names or character strings
#' contain underscore_between_words. This is a better approach for further programming,
#' but you can choose \code{FALSE} for nicer printing results. See examples.
#' @param return_class Default is \code{"numeric"}, alternatives \code{"character"} or
#' \code{"factor"}.
#' @examples
#' rescale_good_bad_3 (column = c(
#' "A good thing", "Neither good nor bad", "A bad thing","NA", "DK")
#' )
#' @export
rescale_good_bad_3 <- function ( column,
from = c("A good thing",
"Neither good nor bad",
"A bad thing"),
to = c(1,0,-1),
na_labels = c("NA","DK"),
underscore = TRUE,
exact_from = TRUE,
return_class = "numeric" ) {
if ( return_class %in% c("character", "factor")) {
to <- c("good", "none", "bad")
if (underscore == FALSE) {
to <- gsub("_", " ", to)
}
}
return(rescale_categories(column = column,
from = from, to = to,
na_labels = na_labels,
exact_from = exact_from,
return_class = return_class))
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.