Scoring the Beck Depression Inventory (BDI and BDI-II)

scoring_bdi(
  data,
  items = 1:21,
  keep = TRUE,
  nvalid = 17,
  digits = NULL,
  version = "BDI-II"
)

Arguments

data

a data.frame containing the BDI items orderd from 1 to 21

items

A character vector with the BDI item names ordered from 1 to 21, or a numeric vector indicating the column numbers of the BDI items in data.

keep

Logical, whether to keep the single items and whether to return variables containing the number of non-missing items on each scale for each respondent. The default is TRUE.

nvalid

A numeric value indicating the number of non-missing items required for score calculations. The default is 17.

digits

Integer of length one: value to round to. No rounding by default.

version

A character vector with the BDI version, either "BDI-I" or "BDI-II" (default)

Value

The function returns 4 variables:

  • nvalid.bdi: Number of valid values (MAX=21)

  • score.bdi: BDI score

  • cutoff.bdi: BDI as categorical variable

  • cutoff.bdi2: BDI-II as categorical variable

Details

  • Number of items: 21

  • Item range: 0 to 3

  • Reverse items: none

  • Score range: 0 to 63

  • Cut-off-values:

    • BDI: \(\le\) 10 = "minimal"; 11 to 18 = "mild"; 19 to 29 = "moderate"; \(\ge\) 30 = "severe"

    • BDI-II: \(\le\) 8 = "none", 9 to 13 = "minimal"; 14 to 19 = "mild"; 20 to 28 = "moderate"; \(\ge\) 29 = "severe"

  • Minimal clinically important difference: none

  • Treatment of missing values: Questionnaires with up to four missing values are scored, replacing any missing values with the average score of the completed items.

References

Beck et al. 1961 (https://doi.org/10.1001%2Farchpsyc.1961.01710120031004)

Beck et al. 1996 (https://doi.org/10.1207%2Fs15327752jpa6703_13)

Examples

if (FALSE) { library(dplyr) items.bdi <- paste0("bdi_", seq(1, 21, 1)) scoring_bdi(mydata, items = items.bdi, version = 'BDI-I') }