The Geriatric Depression Scale (GDS) is an instrument designed specifically for rating depression in the elderly. It can be administrated to healthy, medically ill, and mild to moderately cognitively impaired older adults. As a general rule, GDS is administrated in LCBC to older adults with a lower cut off around 60 years. However, please consult the instructions for each project, as this guideline has been implemented at different time points across the projects.
The questionnaire consists of 30 questions tapping into a wide variety of topics relevant to depression, including cognitive complaints, motivation, thoughts about the past and the future, self-image, and mood itself. The answers should be based the participants' feelings throughout the last week.
Twenty of the questions indicate the presence of depression when answered positively, while the ten remaining indicate depression when answered negatively (see scoring instructions below). The questionnaire is scored accordingly, giving one point for each statement that affirms a depressive symptom. The sum of these scores yields one total score, with a possible range between 0 and 30. ##Scoring The GDS is quite straight forward in its format, a series of 30 questions that take a yes or no answer. This binary coding makes it quite easy to work with. Several of the questions, however, are formulated in such a way that they require a reversal of the coding before the total score can be summed. The questions which require reversal of coding are, 01, 05, 07, 09, 15, 19, 21, 27, 29, 30, meaning answering "yes" to these should be altered to 0, and "no" altered to 1, before calculating the sum score. The total GDS score is after reversal, a simple addition of all the answers into a single score.
One point is given for any “No” answered to the following questions: 1, 5, 7, 9, 15, 19, 21, 27, 29 and 30
and one point is given for every “Yes” answered on the following questions: 2, 3, 4, 6, 8, 10, 11, 12, 13, 14, 16, 17, 18, 20, 22, 23, 24, 25, 26, 28
There are 3 categories of severity for the GDS total score.
Below or equal to 9
is "Normal", above 19 is "Severe depression", and the remaining fall within "Mild depression".
GDS score | Depression category |
0-9 | Normal |
10-19 | Mild depressive |
20-30 | Severe depressive |
The easiest is to have data coded as in the NOAS, as this will let you use default values for the arguments.
The column names in the NOAS all start with gds_
and then are followed by a two-digit numbering of the question:
gds_01, gds_02, gds_03, ... gds_28, gds_29, gds_30
If your data is coded differently, a consistent naming scheme should help you use the functions anyway.
Each row of data should belong to a single answer to the entire questionnaire.
Meaning if you have multiple answers to the questionnaire over time, these should be placed in another row, duplicating the participant ID, together with a column indicating the timepoint the data was collected in.
Data values are binary yes and no answers to the GDS.
While the functions are made in such a way that any type of binary coding works well, the default is set to be yes = 1
, no = 0
.
These can be altered by applying the gds_values
functions to the other functions asking for the coding schema.
Depression Screening Scale: A Preliminary Report, J Psychiatr Res, 17 (1), 37-49, doi: 10.1016/0022-3956(82)90033-4
E L Lesher 1, J S Berryhill (1994), Validation of the Geriatric Depression Scale -- Short Form Among Inpatients, J Clin Psychol, 50 (2), 256-60, doi: 10.1002/1097-4679(199403)50:2<256::aid-jclp2270500218>3.0.co;2-e
gds_compute_sum(
data,
cols = dplyr::matches("[0-3][0-9]$"),
cols_rev = dplyr::matches("01$|05$|07$|09$|15$|19$|21$|27$|29$|30$"),
values = gds_values()
)
gds_factorise(gds_sum)
gds_compute(
data,
cols = dplyr::matches("[0-9][0-9]$"),
cols_rev = dplyr::matches("01$|05$|07$|09$|15$|19$|21$|27$|29$|30$"),
values = gds_values(),
prefix = "gds_",
keep_all = TRUE
)
data.frame with GDS data in it
GDS data columns
Columns for reversal of binary code
named vector of 2 providing the coding for Yes and No answers c(Yes = 1, No = 2)
numeric vector of GDS sums
string to prefix column names of computed values
logical, append to data.frame
numeric
factor
data frame
gds_compute_sum()
: Calculate the total GDS score
gds_factorise()
: Create a factor from the sum of the GDS scores
Other gds_functions:
gds_alter_values()
,
gds_binary()
,
gds_values()
Other gds_functions:
gds_alter_values()
,
gds_binary()
,
gds_values()
Other gds_functions:
gds_alter_values()
,
gds_binary()
,
gds_values()