#' Rescale yes-no questions with 2 levels
#'
#' Rescale the standard Eurobarometer yes-no question with
#' categories \code{"Yes"}, \code{"No"}. Variations of are available as
#' \code{\link{rescale_yes_no_3}} and \code{\link{rescale_yes_no_4}}.
#' This is a wrapper function around the \code{\link{rescale_categories}}
#' function.
#' @param column A column from a survey data frame where answers are coded with
#' two levels, \code{"Yes"} and \code{"No"}.
#' @param from Defaults to \code{"Yes"}, \code{"No"}.
#' @param to Defaults to \code{c(1,0)}. If \code{return_class = "character"} or
#' \code{return_class = "factor"} is selected it returns the abbreviated category
#' names \code{c("yes", "no"}.
#' @param na_labels Defaults to \code{c("default")}.
#' @param exact_from Deafults to \code{TRUE}.
#' @param return_class Default is \code{"numeric"}, alternatives \code{"character"} or
#' \code{"factor"}.
#' @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.
#' @examples
#' rescale_yes_no_2 (column =c("DK",
#' "Yes",
#' "No"),
#' return_class = "character",
#' underscore = FALSE)
#'
#' rescale_yes_no_2 (column =c("DK","Yes",
#' "No"),
#' return_class = "numeric")
#' @export
rescale_yes_no_2 <- function ( column,
from = c("Yes",
"No"),
to = c(1,0),
na_labels = "default",
exact_from = TRUE,
return_class = "numeric",
underscore = TRUE) {
if ( return_class %in% c("character", "factor")) {
to <- c("yes", "no")
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.