Background

The Edinburgh Handedness Inventory is a measurement scale used to assess the dominance of a person’s right or left hand in everyday activities, sometimes referred to as laterality. The inventory can be used by an observer assessing the person, or by a person self-reporting hand use. The latter method tends to be less reliable due to a person over-attributing tasks to the dominant hand.

Scoring

The EHI has several measures that can help assess a person’s laterality.

answer value nominal lq lq_cat lqa_cat
Left dominance -2 left -100 left left
Left preference -1 left -40 left ambidexter
No preference 0 ambidexter 0 right ambidexter
Right preference 1 right 40 right ambidexter
Right dominance 2 right 100 right right

Nominal

The easiest measure from the EHI is the nominal laterality value, which is just the answer to the first question on hand preference when writing. This simple index just treat negative answers as “left” dominance, positive number as “right” dominance, and a 0 as ambidextrous. Note: The original paper by Oldfield (1971) does not explicitly state a category for “Ambidextrous”. It is very rare that a person does not have a clear preference on writing hand, even if they can write with both hands. This category is only added in this package to handle the possible case of someone answering “No preference”.

min max category
-2 -1 left
0 0 ambidexter
1 2 right

Laterality quotient (lq)

The total score of the EHI is more than just summing the values for each answer. The laterality quotient (LQ) uses the answers to all the questions. The LQ can take values from -100 to 100, and is calculated by taking the sum of all positive answers subtracting the sum of absolute values of the negative answers, divided by the sum of both, and multiplied by 100.

katex::katex_html(equation)
Σ(positive)Σ(negative)Σ(positive)+Σ(negative)x100\frac{\Sigma(|positive|)-\Sigma(|negative|)}{\Sigma(|positive|)+\Sigma(|negative|)}x100

Laterality index

The laterality index is based on the laterality quotient (above) and categorises answers into to categories, Left and Right. The Oldfield (1971) paper mentions “indeterminate handedness” a couple of times in the paper, but the case for “true” ambidextrous is not made, and as such the inventory does not have official categories for that. As the index is based on the quotient, that ranges from -100 to 100, getting a perfect 0 LQ is very unlikely, and as indicated in the paper, such score is assumed to belong to the Right hand part of the scale.

min max category
-100 -1 left
0 100 right

An alternate laterality index is also often employed, where scores between -40 and 40 are treated as ambidextrous.

Questionnaire Items

01 - Writing
02 - Drawing
03 - Throwing
04 - Use scissors
05 - Brush teeth
06 - Use knife (without fork)
07 - Use spoon
08 - Use broom (top hand)
09 - Strike match (holding match)
10 - Opening container (hand on lid)

Data requirements

One row of data should refer to a single questionnaire answered, and as such, if a person has answered multiple times, these should appear on separate rows with columns identifying ID and time point per observation.

Column names

For ease, we recommend naming the columns in a consistent way, so the functions in this package become easier to use. The LCBC database follows a naming scheme that prefixes all columns with ehi_ and ends with a zero-padded double digit indicator of the question number.

Data values

The cell values in the data should be coded from -2 through 0 to 2, and there should be a single value per question.

value category
-2 Left hand dominance
-1 Left hand preference
0 No preference
1 Right hand preference
2 Right hand dominance

Using the ehi functions

Nominal value

The nominal value from the EHI is based on the answer to question number 1, regarding writing. The ehi_factorise_nominal function should be supplied this answer directly, and will return a factor vector of equal length with the categories.

library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union
library(questionnaires)

writing <- c(2, 2, -1, 0, 1, -2)
ehi_factorise_nominal(writing)
#> [1] right      right      left       ambidexter right      left      
#> Levels: left ambidexter right

Laterality quotient

Calculating the laterality quotient requires the entire dataset of all EHI columns to be computed, and as such takes an entire data.frame, with a tidy-selector selecting the columns that contain the EHI columns. If you are working with MOAS-like data, the columns are select by default settings.

# Make some synthetic data to try on
ehi_data <- data.frame(
  ehi_01 = c(2L, 2L, -2L, 1L, 2L), 
  ehi_02 = c(2L, 1L, -2L, 1L, 2L), 
  ehi_03 = c(2L, 0L, -1L, 0L, 1L), 
  ehi_04 = c(2L, -1L, -2L, -1L, 1L), 
  ehi_05 = c(2L, 0L, -1L, 1L, 1L),
  ehi_06 = c(1L, 0L, -1L, 0L, 1L), 
  ehi_07 = c(2L, 2L, -1L, 0L, 1L), 
  ehi_08 = c(1L, 2L, 1L, -1L, 1L), 
  ehi_09 = c(2L, 1L, -2L, -1L, 1L),
  ehi_10 = c(2L, 0L, -1L, 0L, 1L)
  )

ehi_data
#>   ehi_01 ehi_02 ehi_03 ehi_04 ehi_05 ehi_06 ehi_07 ehi_08 ehi_09 ehi_10
#> 1      2      2      2      2      2      1      2      1      2      2
#> 2      2      1      0     -1      0      0      2      2      1      0
#> 3     -2     -2     -1     -2     -1     -1     -1      1     -2     -1
#> 4      1      1      0     -1      1      0      0     -1     -1      0
#> 5      2      2      1      1      1      1      1      1      1      1
ehi_data %>% 
  ehi_compute_lq()
#> [1] 100.00000  77.77778 -85.71429   0.00000 100.00000

These values can then be categorized into the two different laterality factors we have available.

ehi_data %>% 
  ehi_compute_lq() %>% 
  ehi_factorise_lq()
#> [1] right right left  right right
#> Levels: left right

ehi_data %>% 
  ehi_compute_lq() %>% 
  ehi_factorise_lqa()
#> [1] right      right      left       ambidexter right     
#> Levels: left ambidexter right

Combine EHI results into a data.frame

In most cases, people will want to add the data derived from the ehi functions directly into their data.frame. This is in most cases best done using dplyr::mutate.

ehi_data %>% 
  mutate(
    ehi_lq = ehi_compute_lq(ehi_data),
    ehi_nominal = ehi_factorise_nominal(ehi_01),
    ehi_lq_cat = ehi_factorise_lq(ehi_lq),
    ehi_lqa_cat = ehi_factorise_lqa(ehi_lq),
  )
#>   ehi_01 ehi_02 ehi_03 ehi_04 ehi_05 ehi_06 ehi_07 ehi_08 ehi_09 ehi_10
#> 1      2      2      2      2      2      1      2      1      2      2
#> 2      2      1      0     -1      0      0      2      2      1      0
#> 3     -2     -2     -1     -2     -1     -1     -1      1     -2     -1
#> 4      1      1      0     -1      1      0      0     -1     -1      0
#> 5      2      2      1      1      1      1      1      1      1      1
#>      ehi_lq ehi_nominal ehi_lq_cat ehi_lqa_cat
#> 1 100.00000       right      right       right
#> 2  77.77778       right      right       right
#> 3 -85.71429        left       left        left
#> 4   0.00000       right      right  ambidexter
#> 5 100.00000       right      right       right

Because this is a little cumbersome to remember, a convenience function is made that will add columns using this naming convention.

ehi_data %>% 
  ehi_compute()
#>   ehi_01 ehi_02 ehi_03 ehi_04 ehi_05 ehi_06 ehi_07 ehi_08 ehi_09 ehi_10
#> 1      2      2      2      2      2      1      2      1      2      2
#> 2      2      1      0     -1      0      0      2      2      1      0
#> 3     -2     -2     -1     -2     -1     -1     -1      1     -2     -1
#> 4      1      1      0     -1      1      0      0     -1     -1      0
#> 5      2      2      1      1      1      1      1      1      1      1
#>      ehi_lq ehi_nominal ehi_lq_cat ehi_lqa_cat
#> 1 100.00000       right      right       right
#> 2  77.77778       right      right       right
#> 3 -85.71429        left       left        left
#> 4   0.00000       right      right  ambidexter
#> 5 100.00000       right      right       right

References

Oldfield, RC (March 1971) The assessment and analysis of handedness: The Edinburgh inventory. Neuropsychologia. 9 (1): 97–113. doi:10.1016/0028-3932(71)90067-4

Verdino, M; Dingman, S (April 1998). Two measures of laterality in handedness: the Edinburgh Handedness Inventory and the Purdue Pegboard test of manual dexterity. Perceptual and Motor Skills. 86 (2): 476–8. doi:10.2466/pms.1998.86.2.476

Knecht, S; Dräger, B; Deppe, M; Bobe, L; Lohmann, H; Flöel, A; Ringelstein, E-B; Henningsen, H (December 2000). Handedness and hemispheric language dominance in healthy humans. Brain. 123 (12): 2512–8. doi:10.1093/brain/123.12.2512.