Compute per-scale internal-consistency reliability — Cronbach's alpha and
McDonald's omega — for the Personality Inventory for DSM-5: full version
(PID-5, 220 items), short form (PID-5-SF, 100 items), or brief form (PID-5-BF,
25 items). Reliability is estimated on the reverse-keyed item responses, at
the facet level for FULL/SF and the domain level for BF (the same scales
score_pid5() outputs, before FULL/SF domain aggregation). The BF version
also returns a Total row covering all 25 items; note that this scale spans
five heterogeneous domains, so its internal consistency is not comparable to
a domain's and is reported without further interpretation.
Arguments
- data
A data frame containing (at least) all the PID items (numerically scored and in order).
- items
A vector of column names (as strings) or numbers (as integers) corresponding to the PID items in order. Items must be supplied in instrument order; duplicated entries are an error.
- version
A string indicating the version of the PID to score: "FULL", "SF", or "BF". Will be automatically capitalized. (default =
"FULL")- srange
An optional numeric vector specifying the minimum and maximum values of the items, used for reverse-coding. (default =
c(0, 3))- alpha
Optional logical; if
TRUE, include a column of Cronbach's alpha per scale. (default =TRUE)- omega
Optional logical; if
TRUE, include a column of McDonald's omega (total) per scale, estimated via a one-factor CFA (requires the lavaan package). (default =TRUE)
Value
A tibble with one row per scale and columns scale,
nItems, and (when requested) alpha and omega.
Details
Alpha is computed by calc_alpha() (covariance-based, pairwise
deletion) and omega by calc_omega() (one-factor lavaan CFA, FIML). A scale
whose estimate cannot be computed (e.g. too few items or, for omega, a
non-converging CFA or an uninstalled lavaan) is returned as NA
rather than aborting the call.
Examples
# Facet-level reliability for the full PID-5 (alpha only)
reliability_pid5(sim_pid5, items = 1:220, version = "FULL", omega = FALSE)
#> # A tibble: 25 × 3
#> scale nItems alpha
#> <chr> <int> <dbl>
#> 1 Anhedonia 8 -0.211
#> 2 Suspiciousness 7 -0.211
#> 3 Risk Taking 14 -0.0128
#> 4 Impulsivity 6 0.141
#> 5 Eccentricity 13 0.0554
#> 6 Distractibility 9 -0.154
#> 7 Restricted Affectivity 7 -0.144
#> 8 Submissiveness 4 -0.194
#> 9 Withdrawal 10 -0.0290
#> 10 Callousness 14 0.0147
#> # ℹ 15 more rows
