Reverse the coding of selected items prior to scale analysis
Reverse the coding of selected items prior to scale analysis
Some IRT functions require all items to be coded in the same direction. Some data sets have items that need to be reverse coded (e.g., 6 -> 1, 1 -> 6). reverse.code will flip items based upon a keys vector of 1s and -1s. Reversed items are subtracted from the item max + item min. These may be specified or may be calculated.
reverse.code(keys, items, mini =NULL, maxi =NULL)
Arguments
keys: A vector of 1s and -1s. -1 implies reverse the item
items: A data set of items
mini: if NULL, the empirical minimum for each item. Otherwise, a vector of minima
maxi: f NULL, the empirical maximum for each item. Otherwise, a vector of maxima
Details
Not a very complicated function, but useful in the case that items need to be reversed prior to using IRT functions from the ltm or eRM packages. Most psych functions do not require reversing prior to analysis, but will do so within the function.
Returns
The corrected items.
Examples
original <- matrix(sample(6,50,replace=TRUE),10,5)keys <- c(1,1,-1,-1,1)#reverse the 3rd and 4th itemsnew <- reverse.code(keys,original,mini=rep(1,5),maxi=rep(6,5))original[1:3,]new[1:3,]