Score multiple choice items and provide basic test statistics
Score multiple choice items and provide basic test statistics
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.
data: a matrix or data frame of items to be scored.
score: score=FALSE, just convert to right (1) or wrong (0).
score=TRUE, find the totals or average scores and do item analysis
totals: total=FALSE: find the average number correct
total=TRUE: find the total number correct
ilabels: item labels
missing: missing=TRUE: missing values are replaced with means or medians
missing=FALSE missing values are not scored
impute: impute="median", replace missing items with the median score
impute="mean": replace missing values with the item mean
digits: How many digits of output
short: short=TRUE, just report the item statistics,
short=FALSE, report item statistics and subject scores as well
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?
Details
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/.
Returns
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
Author(s)
William Revelle
See Also
score.items, omega
Examples
if(require(psychTools)){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}