Deficit (frailty) Index (DI) summarizes a range of deficits from in surveys or clinical data sets. “Recalling that frailty is an age-associated, nonspecific vulnerability, we consider symptoms, signs, diseases, and disabilities as deficits, which are combined in a frailty index. An individual’s frailty index score reflects the proportion of potential deficits present in that person, and indicates the likelihood that frailty is present. Although based on a simple count, the frailty index shows several interesting properties, including a characteristic rate of accumulation, a submaximal limit, and characteristic changes with age in its distribution. The frailty index, as a state variable, is able to quantitatively summarize vulnerability. Future studies include the application of network analyses and stochastic analytical techniques to the evaluation of the frailty index and the description of other state variables in relation to frailty.” [1]

  1. Frailty in Relation to the Accumulation of Deficits. Available from: https://www.researchgate.net/publication/6204727_Frailty_in_Relation_to_the_Accumulation_of_Deficits [accessed Jun 11, 2017].


Basic usage

# Simulate database of N individuals:
N <- 100
dd <- data.frame(subj=seq(1:N), 
# Calculate DI
ddi <- di(dd, c("var1", "var2", "var3"))


By default, values are rescaled to the interval [0,1]. If you do not want this, you can set the rescale flag to FALSE:

ddi <- di(dd, c("var1", "var2", "var3"), rescale = FALSE)


The option invert allows inverting values of some columns (user-defined). invert is NULL by default.

ddi <- di(dd, c("var1", "var2", "var3"), rescale = FALSE, invert=c("var1", "var3"))