Learn R: Create Composite Variable Assignment

Load Packages

haven

Import and export SPSS, STATA, and SAS files

if(!require(haven)){
  install.packages("haven", dependencies = TRUE)
  library(haven)
}
Loading required package: haven

summarytools

Tools to quickly and neatly summarize data

if(!require(summarytools)){
  install.packages("summarytools", dependencies = TRUE)
  library(summarytools)
}
Loading required package: summarytools
Warning in fun(libname, pkgname): couldn't connect to display ":0"
system might not have X11 capabilities; in case of errors when using dfSummary(), set st_options(use.x11 = FALSE)

psych

Provides various procedures for psychological, psychometric, and personality research

if(!require(psych)){
  install.packages("psych", dependencies = TRUE)
  library(psych)
}
Loading required package: psych

Import Data

dataset <- read_sav("https://osf.io/kd4ej/download")
#create dataframe with only relevant variables to work with
Extraversion <- data.frame (dataset$FFM_1, dataset$FFM_6, dataset$FFM_11, dataset$FFM_16, dataset$FFM_21, dataset$FFM_26, dataset$FFM_31, dataset$FFM_36)

#create list of 'keys'. The  numbers just refer to the order of the question in the data.frame() you just made. The most important thing is to mark the questions that should be reversed scored with a '-'. 
Extraversion.keys <- make.keys(Extraversion, list(Extraversion=c(1,-2,3,4,-5,6,-7,8)))

#score the scale
Extraversion.scales <- scoreItems (Extraversion.keys, Extraversion)

#save the scores
Extraversion.scores <- Extraversion.scales$scores
#save the scores back in 'dataset'
dataset$Extraversion <- Extraversion.scores[,]
#print the cronbach alpha
Extraversion.scales$alpha
      Extraversion
alpha    0.8141661