| score.multiple.choice {psych} | R Documentation | 
Ability tests are typically multiple choice with one right answer. score.multiple.choice takes a scoring key and a data matrix (or data.frame) and finds total or average number right for each participant. Basic test statistics (alpha, average r, item means, item-whole correlations) are also reported.
score.multiple.choice(key, data, score = TRUE, totals = FALSE, ilabels = NULL, 
      missing = TRUE, impute = "median", digits = 2,short=TRUE,skew=FALSE)
| key | A vector of the correct item alternatives | 
| data | a matrix or data frame of items to be scored. | 
| score | score=FALSE, just convert to right (1) or wrong (0). | 
| totals | total=FALSE: find the average number correct  | 
| ilabels | item labels | 
| missing | missing=TRUE: missing values are replaced with means or medians  | 
| impute | impute="median", replace missing items with the median score
 | 
| digits | How many digits of output | 
| short | short=TRUE, just report the item statistics,  | 
| skew | Should the skews and kurtosi of the raw data be reported? Defaults to FALSE because what is the meaning of skew for a multiple choice item? | 
Basically combines score.items with a conversion from multiple choice to right/wrong.
The item-whole correlation is inflated because of item overlap.
The example data set is taken from the Synthetic Aperture Personality Assessment personality and ability test at https://www.sapa-project.org/.
| scores | Subject scores on one scale | 
| missing | Number of missing items for each subject | 
| item.stats | scoring key, response frequencies, item whole correlations, n subjects scored, mean, sd, skew, kurtosis and se for each item | 
| alpha | Cronbach's coefficient alpha | 
| av.r | Average interitem correlation | 
William Revelle
score.items, omega
data(psychTools::iqitems)
iq.keys <- c(4,4,4, 6,6,3,4,4,  5,2,2,4,  3,2,6,7)
score.multiple.choice(iq.keys,psychTools::iqitems)
#just convert the items to true or false 
iq.tf <- score.multiple.choice(iq.keys,psychTools::iqitems,score=FALSE)
describe(iq.tf)  #compare to previous results