# Load necessary libraries
library(tidyr)
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(lme4)
## Loading required package: Matrix
##
## Attaching package: 'Matrix'
## The following objects are masked from 'package:tidyr':
##
## expand, pack, unpack
# Load the data
data <- read.csv("Musicianship.csv", header = TRUE)
# Display the first few rows and column names to verify structure
head(data)
## Participant Musician Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Q11 Q12 Q13 Q14 Q15 Q16
## 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
## 2 2 0 1 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0
## 3 3 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0
## 4 4 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1
## 5 5 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 1 0
## 6 6 0 1 1 1 1 1 1 1 1 0 1 0 0 1 0 0 0
## Q17 Q18 Q19 Q20 Q21 Q22 Q23 Q24 Q25 Q26 Q27 Q28 Q29 Q30 Q31 Q32 Q33 Q34 Q35
## 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 0 0 0
## 2 1 0 0 0 0 0 0 0 1 1 0 1 1 1 1 1 1 1 1
## 3 1 0 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 1
## 4 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1
## 5 0 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 0 1
## 6 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 1 1 1 1
## Q36 Q37 Q38 Q39 Q40 Q41 Q42 Q43 Q44 Q45 Q46 Q47 Q48 Q49 Q50 Q51 Q52 Q53 Q54
## 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
## 2 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0
## 3 1 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 1 0
## 4 1 1 1 0 1 1 1 0 1 0 0 0 1 0 0 1 0 1 1
## 5 1 1 1 1 1 1 0 1 1 0 0 0 1 0 1 0 1 1 0
## 6 1 1 1 1 1 1 0 0 0 0 1 0 0 0 1 0 1 1 0
## Q55 Q56 Q57 Q58 Q59 Q60 Q61 Q62 Q63 Q64 Q65 Q66 Q67 Q68 Q69 Q70 Q71 Q72 Q73
## 1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1
## 2 0 0 0 0 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1
## 3 1 0 0 1 0 1 1 1 0 0 0 0 1 1 1 1 1 1 1
## 4 1 1 1 1 0 1 0 1 0 0 1 1 1 0 1 1 1 1 1
## 5 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 1 1
## 6 0 0 0 1 1 0 1 0 0 0 1 1 0 1 1 1 1 1 1
## Q74 Q75 Q76 Q77 Q78 Q79 Q80 Q81 Q82 Q83 Q84 Q85 Q86 Q87 Q88 Q89 Q90 Q91 Q92
## 1 1 0 1 1 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1
## 2 1 1 1 1 1 1 1 1 1 0 0 1 0 1 0 1 1 1 0
## 3 1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 0 0
## 4 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1
## 5 1 1 0 0 1 1 0 1 0 1 1 0 0 0 1 1 1 0 0
## 6 1 1 1 1 1 1 0 1 0 1 1 0 0 0 1 1 1 0 0
## Q93 Q94 Q95 Q96 Q97 Q98 Q99 Q100 Q101 Q102 Q103 Q104 Q105 Q106 Q107 Q108 Q109
## 1 1 1 1 1 0 1 0 0 1 1 1 0 0 1 1 0 1
## 2 0 0 1 1 0 1 1 1 1 0 0 1 0 1 0 0 0
## 3 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1
## 4 1 1 1 1 1 0 0 0 1 1 1 0 0 1 0 0 1
## 5 0 0 1 1 1 1 1 1 1 1 0 1 0 1 1 1 0
## 6 1 1 1 0 1 1 1 1 1 1 1 0 0 1 0 0 1
## Q110 Q111 Q112 Q113 Q114 Q115 Q116 Q117 Q118 Q119 Q120 Q121 Q122 Q123 Q124
## 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1
## 2 1 1 0 0 1 1 1 0 0 0 0 0 0 0 1
## 3 0 1 0 1 1 1 0 1 1 0 0 1 0 1 1
## 4 1 1 1 0 1 1 1 0 1 0 0 0 0 1 1
## 5 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1
## 6 1 0 1 1 1 0 1 1 1 1 0 1 1 1 1
## Q125 Q126 Q127 Q128 Q129 Q130 Q131 Q132 Q133 Q134 Q135 Q136 Q137 Q138 Q139
## 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1
## 2 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1
## 3 1 1 1 0 1 1 1 1 0 1 1 1 1 1 0
## 4 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
## 5 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1
## 6 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1
## Q140 Q141 Q142 Q143 Q144 Q145 Q146 Q147 Q148 Q149 Q150 Q151 Q152 Q153 Q154
## 1 1 1 1 1 0 1 1 0 1 1 0 1 1 1 1
## 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 3 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1
## 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 5 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1
## 6 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1
## Q155 Q156 Q157 Q158 Q159 Q160 Q161 Q162 Q163 Q164 Q165 Q166 Q167 Q168 Q169
## 1 1 1 1 1 1 1 1 1 0 0 1 0 0 0 1
## 2 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1
## 3 1 1 1 1 1 1 1 0 0 0 0 1 1 0 1
## 4 1 1 1 1 1 1 0 0 1 1 0 0 0 0 1
## 5 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0
## 6 1 1 1 1 1 1 0 1 0 0 1 0 0 0 1
## Q170 Q171 Q172 Q173 Q174 Q175 Q176 Q177 Q178 Q179 Q180 Q181 Q182 Q183 Q184
## 1 0 0 1 1 0 0 0 1 0 0 1 1 0 0 1
## 2 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1
## 3 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1
## 4 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1
## 5 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1
## 6 0 0 1 1 1 0 1 1 0 0 1 1 1 1 1
## Q185 Q186 Q187 Q188 Q189 Q190 Q191 Q192 Q193 Q194 Q195 Q196 Q197 Q198 Q199
## 1 0 0 0 0 1 0 0 0 1 1 1 1 1 1 1
## 2 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0
## 3 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1
## 4 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1
## 5 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1
## 6 0 1 1 0 0 0 1 0 1 1 1 1 1 1 1
## Q200 Q201 Q202 Q203 Q204 Q205 Q206 Q207 Q208 Q209 Q210 Q211 Q212 Q213 Q214
## 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1
## 2 1 0 0 1 1 0 0 1 0 1 1 0 0 0 0
## 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 4 1 0 1 0 0 0 0 0 0 1 1 0 0 1 0
## 5 1 0 0 1 1 0 1 0 1 1 1 1 1 1 1
## 6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## Q215 Q216 Q217 Q218 Q219 Q220 Q221 Q222 Q223 Q224
## 1 1 1 1 1 1 1 1 1 1 1
## 2 1 0 1 1 0 0 1 1 0 1
## 3 1 1 1 1 1 1 1 1 1 1
## 4 1 0 1 1 1 1 1 1 0 1
## 5 1 1 1 1 1 1 1 1 1 1
## 6 1 1 1 1 1 1 0 1 1 1
colnames(data)
## [1] "Participant" "Musician" "Q1" "Q2" "Q3"
## [6] "Q4" "Q5" "Q6" "Q7" "Q8"
## [11] "Q9" "Q10" "Q11" "Q12" "Q13"
## [16] "Q14" "Q15" "Q16" "Q17" "Q18"
## [21] "Q19" "Q20" "Q21" "Q22" "Q23"
## [26] "Q24" "Q25" "Q26" "Q27" "Q28"
## [31] "Q29" "Q30" "Q31" "Q32" "Q33"
## [36] "Q34" "Q35" "Q36" "Q37" "Q38"
## [41] "Q39" "Q40" "Q41" "Q42" "Q43"
## [46] "Q44" "Q45" "Q46" "Q47" "Q48"
## [51] "Q49" "Q50" "Q51" "Q52" "Q53"
## [56] "Q54" "Q55" "Q56" "Q57" "Q58"
## [61] "Q59" "Q60" "Q61" "Q62" "Q63"
## [66] "Q64" "Q65" "Q66" "Q67" "Q68"
## [71] "Q69" "Q70" "Q71" "Q72" "Q73"
## [76] "Q74" "Q75" "Q76" "Q77" "Q78"
## [81] "Q79" "Q80" "Q81" "Q82" "Q83"
## [86] "Q84" "Q85" "Q86" "Q87" "Q88"
## [91] "Q89" "Q90" "Q91" "Q92" "Q93"
## [96] "Q94" "Q95" "Q96" "Q97" "Q98"
## [101] "Q99" "Q100" "Q101" "Q102" "Q103"
## [106] "Q104" "Q105" "Q106" "Q107" "Q108"
## [111] "Q109" "Q110" "Q111" "Q112" "Q113"
## [116] "Q114" "Q115" "Q116" "Q117" "Q118"
## [121] "Q119" "Q120" "Q121" "Q122" "Q123"
## [126] "Q124" "Q125" "Q126" "Q127" "Q128"
## [131] "Q129" "Q130" "Q131" "Q132" "Q133"
## [136] "Q134" "Q135" "Q136" "Q137" "Q138"
## [141] "Q139" "Q140" "Q141" "Q142" "Q143"
## [146] "Q144" "Q145" "Q146" "Q147" "Q148"
## [151] "Q149" "Q150" "Q151" "Q152" "Q153"
## [156] "Q154" "Q155" "Q156" "Q157" "Q158"
## [161] "Q159" "Q160" "Q161" "Q162" "Q163"
## [166] "Q164" "Q165" "Q166" "Q167" "Q168"
## [171] "Q169" "Q170" "Q171" "Q172" "Q173"
## [176] "Q174" "Q175" "Q176" "Q177" "Q178"
## [181] "Q179" "Q180" "Q181" "Q182" "Q183"
## [186] "Q184" "Q185" "Q186" "Q187" "Q188"
## [191] "Q189" "Q190" "Q191" "Q192" "Q193"
## [196] "Q194" "Q195" "Q196" "Q197" "Q198"
## [201] "Q199" "Q200" "Q201" "Q202" "Q203"
## [206] "Q204" "Q205" "Q206" "Q207" "Q208"
## [211] "Q209" "Q210" "Q211" "Q212" "Q213"
## [216] "Q214" "Q215" "Q216" "Q217" "Q218"
## [221] "Q219" "Q220" "Q221" "Q222" "Q223"
## [226] "Q224"
# Ensure correct column names
colnames(data)[1:2] <- c('Participant', 'Musician')
# Reshape the data from wide to long format
long_data <- data %>%
pivot_longer(cols = -c(Participant, Musician), names_to = "Question", values_to = "Response")
# Ensure the data types are correct
long_data$Response <- as.numeric(long_data$Response)
long_data$Musician <- as.factor(long_data$Musician)
long_data$Participant <- as.factor(long_data$Participant)
long_data$Question <- as.factor(long_data$Question)
# Inspect the Response values
summary(long_data$Response)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.0000 0.0000 1.0000 0.6416 1.0000 1.0000 224
# Filter out any invalid Response values
long_data <- long_data %>%
filter(Response %in% c(0, 1))
# Fit the generalized linear mixed-effects model
model_glmer <- glmer(Response ~ Musician + (1 | Participant) + (1 | Question),
data = long_data, family = binomial)
# Display the summary of the model
summary(model_glmer)
## Generalized linear mixed model fit by maximum likelihood (Laplace
## Approximation) [glmerMod]
## Family: binomial ( logit )
## Formula: Response ~ Musician + (1 | Participant) + (1 | Question)
## Data: long_data
##
## AIC BIC logLik deviance df.resid
## 6160.1 6186.7 -3076.1 6152.1 5596
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -4.4618 -0.6885 0.3397 0.5970 3.4704
##
## Random effects:
## Groups Name Variance Std.Dev.
## Question (Intercept) 1.8014 1.3422
## Participant (Intercept) 0.2553 0.5053
## Number of obs: 5600, groups: Question, 224; Participant, 25
##
## Fixed effects:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 0.78962 0.14722 5.364 8.15e-08 ***
## Musician1 0.09337 0.28934 0.323 0.747
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr)
## Musician1 -0.314