item.scores | R Documentation |
This function computes (prorated) scale scores by averaging the (available) items that measure a single construct by default.
item.scores(..., data = NULL, fun = c("mean", "sum", "median", "var", "sd", "min", "max"),
prorated = TRUE, p.avail = NULL, n.avail = NULL, append = TRUE,
name = "scores", as.na = NULL, check = TRUE)
... |
a matrix or data frame with numeric vectors. Alternatively, an
expression indicating the variable names in |
data |
a data frame when specifying one or more variables in the
argument |
fun |
a character string indicating the function used to compute
scale scores, default: |
prorated |
logical: if |
p.avail |
a numeric value indicating the minimum proportion of available
item responses needed for computing a prorated scale score for
each case, e.g. |
n.avail |
an integer indicating the minimum number of available item
responses needed for computing a prorated scale score for each
case, e.g. |
append |
logical: if |
name |
a character string indicating the names of the variable appended
to the data frame specified in the argument |
as.na |
a numeric vector indicating user-defined missing values,
i.e. these values are converted to |
check |
logical: if |
Prorated mean scale scores are computed by averaging the available items, e.g., if a participant answers 4 out of 8 items, the prorated scale score is the average of the 4 responses. Averaging the available items is equivalent to substituting the mean of a participant's own observed items for each of the participant's missing items, i.e., person mean imputation (Mazza, Enders & Ruehlman, 2015) or ipsative mean imputation (Schafer & Graham, 2002).
Proration may be reasonable when (1) a relatively high proportion of the items (e.g., 0.8) and never fewer than half are used to form the scale score, (2) means of the items comprising a scale are similar and (3) the item-total correlations are similar (Enders, 2010; Graham, 2009; Graham, 2012). Results of simulation studies indicate that proration is prone to substantial bias when either the item means or the inter-item correlation vary (Lee, Bartholow, McCarthy, Pederson & Sher, 2014; Mazza et al., 2015).
Returns a numeric vector with the same length as nrow(x)
containing (prorated)
scale scores.
Takuya Yanagida takuya.yanagida@univie.ac.at
Enders, C. K. (2010). Applied missing data analysis. New York, NY: Guilford Press.
Graham, J. W. (2009). Missing data analysis: Making it work in the real world. Annual Review of Psychology, 60, 549-576. https://doi.org/10.1146/annurev.psych.58.110405.085530
Graham, J. W. (2012). Missing data: Analysis and design. New York, NY: Springer
Lee, M. R., Bartholow, B. D., McCarhy, D. M., Pederson, S. L., & Sher, K. J. (2014). Two alternative approaches to conventional person-mean imputation scoring of the self-rating of the effects of alcohol scale (SRE). Psychology of Addictive Behaviors, 29, 231-236. https://doi.org/10.1037/adb0000015
Mazza, G. L., Enders, C. G., & Ruehlman, L. S. (2015). Addressing item-level missing data: A comparison of proration and full information maximum likelihood estimation. Multivariate Behavioral Research, 50, 504-519. https://doi.org/10.1080/00273171.2015.1068157
Schafer, J. L., & Graham, J. W. (2002). Missing data: Our view of the state of the art. Psychological Methods, 7, 147-177.' https://doi.org/10.1037/1082-989X.7.2.147
cluster.scores
, item.alpha
, item.cfa
,
item.omega
,
dat <- data.frame(item1 = c(3, 2, 4, 1, 5, 1, 3, NA),
item2 = c(2, 2, NA, 2, 4, 2, NA, 1),
item3 = c(1, 1, 2, 2, 4, 3, NA, NA),
item4 = c(4, 2, 4, 4, NA, 2, NA, NA),
item5 = c(3, NA, NA, 2, 4, 3, NA, 3))
# Example 1a: Prorated mean scale scores
item.scores(dat)
# Example 1b: Alternative specification using the 'data' argument
item.scores(., data = dat)
# Example 2: Prorated standard deviation scale scores
item.scores(dat, fun = "sd")
# Example 3: Sum scale scores without proration
item.scores(dat, fun = "sum", prorated = FALSE)
# Example 4: Prorated mean scale scores,
# minimum proportion of available item responses = 0.8
item.scores(dat, p.avail = 0.8)
# Example 5: Prorated mean scale scores,
# minimum number of available item responses = 3
item.scores(dat, n.avail = 3)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.