R/scaling_rile.R

Defines functions logit_rile.ManifestoCorpus logit_rile.ManifestoDocument logit_rile.default logit_rile rile.ManifestoCorpus rile.ManifestoDocument rile.default rile rile_l rile_r

Documented in logit_rile rile rile_l rile_r

#' @export
#' @rdname categories
rile_r <- function() {
  c(104, 201, 203, 305, 401, 402, 407, 414, 505, 601, 603, 605, 606)
}

#' @export
#' @rdname categories
rile_l <- function() {
  c(103, 105, 106, 107, 202, 403, 404, 406, 412, 413, 504, 506, 701)
}


#' RILE
#' 
#' Computes the RILE or other bipolar linear scaling measures for each case in a
#' data.frame or ManifestoCorpus or for a ManifestoDocument
#'
#' @rdname rile
#' @param x A data.frame with cases to be scaled, variables named "per..."
#' @export
rile <- function(x) { UseMethod("rile", x) }
#' @export
rile.default <- function(x) {
  x %>%
    { suppressMessages(aggregate_pers(., overwrite = "peruncod")) } %>%  ## Aggregation from Handbook 5 to 4, peruncod might change
    scale_bipolar(pos = paste0("per", rile_r()), neg = paste0("per", rile_l()))
}

#' @export
rile.ManifestoDocument <- function(x) {
  .Deprecated("mp_scale(doc, scalingfun = rile)")
  scalingname = "rile"
  f <- document_scaling(rile.default, scalingname = scalingname, recode_v5_to_v4 = (scalingname %in% c("rile", "logit_rile")))
  f(x)
}
#' @export
rile.ManifestoCorpus <- function(x) {
  .Deprecated("mp_scale(corpus, scalingfun = rile)")
  scalingname = "rile"
  f <- corpus_scaling(rile.default, scalingname = scalingname, recode_v5_to_v4 = (scalingname %in% c("rile", "logit_rile")))
  f(x)
}

#' @rdname rile
#' @export
logit_rile <- function(x) { UseMethod("logit_rile", x) }
#' @export
logit_rile.default <- function(x) {
  x %>%
    { suppressMessages(aggregate_pers(., overwrite = "peruncod")) } %>%  ## Aggregation from Handbook 5 to 4, peruncod might change
    scale_logit(pos = paste0("per", rile_r()), neg = paste0("per", rile_l()))
}

#' @export
logit_rile.ManifestoDocument <- function(x) {
  .Deprecated("mp_scale(doc, scalingfun = logit_rile)")
  scalingname = "logit_rile"
  f <- document_scaling(logit_rile.default, scalingname = "logit_rile", recode_v5_to_v4 = (scalingname %in% c("rile", "logit_rile")))
  f(x)
}
#' @export
logit_rile.ManifestoCorpus <- function(x) {
  .Deprecated("mp_scale(corpus, scalingfun = logit_rile)")
  scalingname = "logit_rile"
  f <- corpus_scaling(logit_rile.default, scalingname = "logit_rile", recode_v5_to_v4 = (scalingname %in% c("rile", "logit_rile")))
  f(x)
}

Try the manifestoR package in your browser

Any scripts or data that you put into this service are public.

manifestoR documentation built on May 29, 2024, 6:02 a.m.