Learn R Programming

misty (version 0.6.7)

item.reverse: Reverse Code Scale Item

Description

This function reverse codes inverted items, i.e., items that are negatively worded.

Usage

item.reverse(..., data = NULL, min = NULL, max = NULL, keep = NULL, append = TRUE,
             name = ".r", as.na = NULL, table = FALSE, check = TRUE)

Value

Returns a numeric vector or data frame with the same length or same number of rows as ... containing the reverse coded scale item(s).

Arguments

...

a numeric vector for reverse coding an item, matrix or data frame for reverse coding more than one item. Alternatively, an expression indicating the variable names in data e.g., item.reverse(x1, x2, x3, data = dat). Note that the operators ., +, -, ~, :, ::, and ! can also be used to select variables, see 'Details' in the df.subset function.

data

a data frame when specifying one or more variables in the argument .... Note that the argument is NULL when specifying a numeric vector or data frame for the argument ....

min

an integer indicating the minimum of the item (i.e., lowest possible scale value).

max

an integer indicating the maximum of the item (i.e., highest possible scale value).

keep

a numeric vector indicating values not to be reverse coded.

append

logical: if TRUE (default), recoded variable(s) are appended to the data frame specified in the argument data.

name

a character string or character vector indicating the names of the reverse coded item. By default, variables are named with the ending ".r" resulting in e.g. "x1.r" and "x2.r". Variable names can also be specified using a character vector matching the number of variables specified in ... (e.g., name = c("reverse.x1", "reverse.x2")).

as.na

a numeric vector indicating user-defined missing values, i.e. these values are converted to NA before conducting the analysis.

table

logical: if TRUE, a cross table item x reverse coded item is printed on the console if only one variable is specified in ....

check

logical: if TRUE (default), argument specification is checked.

Author

Takuya Yanagida takuya.yanagida@univie.ac.at

Details

If arguments min and/or max are not specified, empirical minimum and/or maximum is computed from the data Note, however, that reverse coding might fail if the lowest or highest possible scale value is not represented in the data That is, it is always preferable to specify the arguments min and max.

References

Rasch, D., Kubinger, K. D., & Yanagida, T. (2011). Statistics in psychology - Using R and SPSS. New York: John Wiley & Sons.

See Also

item.alpha, item.omega, rec, item.scores

Examples

Run this code
dat <- data.frame(item1 = c(1, 5, 3, 1, 4, 4, 1, 5),
                  item2 = c(1, 1.3, 1.7, 2, 2.7, 3.3, 4.7, 5),
                  item3 = c(4, 2, 4, 5, 1, 3, 5, -99))

# Example 1a: Reverse code item1 and append to 'dat'
dat$item1r <- item.reverse(dat$item1, min = 1, max = 5)

# Example 1b: Alternative specification using the 'data' argument
item.reverse(item1, data = dat, min = 1, max = 5)

# Example 2: Reverse code item3 while keeping the value -99
dat$item3r <- item.reverse(dat$item3, min = 1, max = 5, keep = -99)

# Example 3: Reverse code item3 while keeping the value -99 and check recoding
dat$item3r <- item.reverse(dat$item3, min = 1, max = 5, keep = -99, table = TRUE)

# Example 4a: Reverse code item1, item2, and item 3 and attach to 'dat'
dat <- cbind(dat,
             item.reverse(dat[, c("item1", "item2", "item3")],
                          min = 1, max = 5, keep = -99))

# Example 4b: Alternative specification using the 'data' argument
item.reverse(item1:item3, data = dat, min = 1, max = 5, keep = -99)

Run the code above in your browser using DataLab