item_omega: McDonald's Omega for Items or Scales

View source: R/item_omega.R

item_omegaR Documentation

McDonald's Omega for Items or Scales

Description

This function computes McDonald's omega reliability coefficients alongside Cronbach's alpha for a set of items or a scale. It acts as a wrapper for the psych::omega() function. The aim is to make McDonald's omega readily available and present it with the widely-known Cronbach's alpha, allowing for a more complete understanding of scale reliability. The output includes various forms of omega (e.g., total, hierarchical) depending on the factor structure specified.

Usage

item_omega(x, ...)

## S3 method for class 'data.frame'
item_omega(
  x,
  n = "auto",
  rotation = "oblimin",
  factor_method = "minres",
  poly_cor = FALSE,
  verbose = TRUE,
  ...
)

## S3 method for class 'matrix'
item_omega(
  x,
  n = "auto",
  rotation = "oblimin",
  factor_method = "minres",
  n_obs = NULL,
  poly_cor = FALSE,
  verbose = TRUE,
  ...
)

Arguments

x

A matrix or a data frame.

...

Additional arguments passed to psych::omega().

n

Number of factors to extract.

rotation

Rotation to be applied. Defaults to "oblimin". Further options are "simplimax", "Promax", "cluster" and "target". See ?psych::omega for details.

factor_method

The factoring method to be used. Passed to the fm argument in psych::omega(). Defaults to "minres" (minimum residual). Other options include "ml" (maximum likelihood), "pa" (principal axis), etc.

poly_cor

Logical, if TRUE, polychoric correlations will be computed (by passing poly = TRUE to psych::omega()). Defaults to FALSE.

verbose

Logical, if TRUE (default), messages are printed.

n_obs

Number of observations in the original data set if x is a correlation matrix. Required to compute correct fit indices.

Details

item_omega() is a simple wrapper around psych::omega(), which returns the reliability coefficients. The original object returned by psych::omega() is saved as ⁠$model⁠ attribute. Further information are accessible via the summary() and parameters::model_parameters() methods. Use as.numeric() to return the reliability coefficients as (named) numeric vector. Detailed information can be found in the docs of ?psych::omega.

Value

A data frames containing the reliability coefficients. Use summary() or parameters::model_parameters() on the returned object to extract more information.

References

  • Bland, J. M., & Altman, D. G. (1997). Statistics notes: Cronbach's alpha. BMJ, 314(7080), 572. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1136/bmj.314.7080.572")}

  • Revelle, W., & Zinbarg, R. E. (2009). Coefficients alpha, beta, omega, and the glb: Comments on Sijtsma. Psychometrika, 74(1), 145–154. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1007/s11336-008-9102-z")}

  • Zinbarg, R.E., Revelle, W., Yovel, I., & Li. W. (2005). Cronbach's Alpha, Revelle's Beta, McDonald's Omega: Their relations with each and two alternative conceptualizations of reliability. Psychometrika. 70, 123-133

Examples


data(mtcars)
x <- mtcars[1:7]
result <- item_omega(x, n = 2)

result

as.numeric(result)

summary(result)

parameters::model_parameters(result)


performance documentation built on Aug. 31, 2025, 1:07 a.m.