Predicting Math Anxiety

Outcome (Numerical): (Math anxiety) score_AMAS_total AMAS1 AMAS2 AMAS3 AMAS4)

Dichotomous Predictor: sex

Multi-categorical Predictor: sample

Predictor 1: (General trait anxiety) score_GAD GAD1 GAD2 GAD3 GAD4 GAD5 GAD6 GAD7

Predictor 2: (Math self-concept) score_SDQ_M SDQ_M1 SDQ_M2 SDQ_M3 SDQ_M4

Predictor 3: (Neuroticism) score_BFI_N BFI_N1 BFI_N2 BFI_N3 BFI_N4 BFI_N5 BFI_N6 BFI_N7 BFI_N8

# if the required packages were not installed, install the packages first
# remove the comment sign # and run the code
#  install.packages("readr")
#  install.packages("psych")
#  install.packages("dplyr")
#  install.packages("tidyr")
# install.packages("car")
# install.packages("lm.beta")
# install.packages("interactions")
# install.packages("emmeans")
# install.packages("ggeffects")
# install.packages("mediation")
# install.packages("lavaan")
# load the following packages
library(readr)
library(psych)
library(dplyr)
library(tidyr)
#library(car)
#library(lm.beta)
#library(emmeans)
#library(ggeffects)
#library(interactions)
library(mediation)
library(lavaan)
# turn off scientific notation 
options(scipen = 999)
# examine the dataset
# take a look at the Console to see what object name is assigned to the dataset by R
AMATUS_dataset_processed
# Row-wise average
Anxiety_data <- AMATUS_dataset_processed %>% 
  dplyr::mutate(a_average = rowMeans(dplyr::select(., AMAS1, AMAS2, AMAS3, AMAS4, AMAS5, AMAS6, AMAS7, AMAS8, AMAS9)))
Anxiety_data
describe(Anxiety_data[, c("score_AMAS_total",
                            "score_GAD",
                            "score_SDQ_M",
                            "score_BFI_N",
                            "sex",
                            "sample")])
Anxiety_data1 <- Anxiety_data %>% drop_na("score_AMAS_total",
                            "score_GAD",
                            "score_SDQ_M",
                            "score_BFI_N",
                            "sex",
                            "sample")
Anxiety_data1
Anxiety_data2 <- Anxiety_data %>% 
  mutate(
    sex_d = recode(sex, 'f' = 0,
                        'm' = 1),
    
    ger_stu = recode(sample, 'german_students' = "1"),
    
    ger_tea = recode(sample, 'german_teachers' = "2",),
    
    bel_tea = recode(sample, 'belgian_teachers' = "3")
  )
table(Anxiety_data2$sex, Anxiety_data2$sex_d)
   
      0   1
  f 820   0
  m   0 286
table(Anxiety_data2$sample, Anxiety_data2$ger_stu)
                  
                     1 belgian_teachers german_teachers
  belgian_teachers   0              127               0
  german_students  848                0               0
  german_teachers    0                0             131
table(Anxiety_data2$sample, Anxiety_data2$ger_tea)
                  
                     2 belgian_teachers german_students
  belgian_teachers   0              127               0
  german_students    0                0             848
  german_teachers  131                0               0
table(Anxiety_data2$sample, Anxiety_data2$bel_tea)
                  
                     3 german_students german_teachers
  belgian_teachers 127               0               0
  german_students    0             848               0
  german_teachers    0               0             131
Anxiety_lm <- lm(score_AMAS_total ~ score_SDQ_M + score_GAD + score_BFI_N + sex_d + ger_stu, 
                 data = Anxiety_data2)
summary(Anxiety_lm)

Call:
lm(formula = score_AMAS_total ~ score_SDQ_M + score_GAD + score_BFI_N + 
    sex_d + ger_stu, data = Anxiety_data2)

Residuals:
     Min       1Q   Median       3Q      Max 
-17.2076  -3.4000  -0.3279   3.0469  23.3077 

Coefficients:
                        Estimate Std. Error t value             Pr(>|t|)    
(Intercept)             27.23036    0.93261  29.198 < 0.0000000000000002 ***
score_SDQ_M             -1.26723    0.04843 -26.168 < 0.0000000000000002 ***
score_GAD                0.24500    0.04541   5.396         0.0000000836 ***
score_BFI_N              0.14165    0.03144   4.505         0.0000073394 ***
sex_d                   -1.69373    0.35113  -4.824         0.0000016079 ***
ger_stubelgian_teachers  0.46216    0.47624   0.970              0.33204    
ger_stugerman_teachers   1.28745    0.46584   2.764              0.00581 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.903 on 1099 degrees of freedom
Multiple R-squared:  0.4943,    Adjusted R-squared:  0.4916 
F-statistic: 179.1 on 6 and 1099 DF,  p-value: < 0.00000000000000022
anova(Anxiety_lm)
Analysis of Variance Table

Response: score_AMAS_total
              Df  Sum Sq Mean Sq F value                Pr(>F)    
score_SDQ_M    1 21603.8 21603.8 898.501 < 0.00000000000000022 ***
score_GAD      1  2661.2  2661.2 110.681 < 0.00000000000000022 ***
score_BFI_N    1   683.7   683.7  28.436          0.0000001175 ***
sex_d          1   691.7   691.7  28.769          0.0000000994 ***
ger_stu        2   191.4    95.7   3.980               0.01896 *  
Residuals   1099 26424.6    24.0                                  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KUHJlZGljdGluZyBNYXRoIEFueGlldHkNCg0KT3V0Y29tZSAoTnVtZXJpY2FsKTogKE1hdGggYW54aWV0eSkgc2NvcmVfQU1BU190b3RhbCBBTUFTMSBBTUFTMiBBTUFTMyBBTUFTNCkNCg0KRGljaG90b21vdXMgUHJlZGljdG9yOiBzZXgNCg0KTXVsdGktY2F0ZWdvcmljYWwgUHJlZGljdG9yOiBzYW1wbGUNCg0KUHJlZGljdG9yIDE6IChHZW5lcmFsIHRyYWl0IGFueGlldHkpIHNjb3JlX0dBRCBHQUQxIEdBRDIgR0FEMyBHQUQ0IEdBRDUgR0FENiBHQUQ3DQoNClByZWRpY3RvciAyOiAoTWF0aCBzZWxmLWNvbmNlcHQpIHNjb3JlX1NEUV9NIFNEUV9NMSBTRFFfTTIgU0RRX00zIFNEUV9NNA0KDQpQcmVkaWN0b3IgMzogKE5ldXJvdGljaXNtKSBzY29yZV9CRklfTiBCRklfTjEgQkZJX04yIEJGSV9OMyBCRklfTjQgQkZJX041IEJGSV9ONiBCRklfTjcgQkZJX044DQoNCmBgYHtyfQ0KIyBpZiB0aGUgcmVxdWlyZWQgcGFja2FnZXMgd2VyZSBub3QgaW5zdGFsbGVkLCBpbnN0YWxsIHRoZSBwYWNrYWdlcyBmaXJzdA0KIyByZW1vdmUgdGhlIGNvbW1lbnQgc2lnbiAjIGFuZCBydW4gdGhlIGNvZGUNCiMgIGluc3RhbGwucGFja2FnZXMoInJlYWRyIikNCiMgIGluc3RhbGwucGFja2FnZXMoInBzeWNoIikNCiMgIGluc3RhbGwucGFja2FnZXMoImRwbHlyIikNCiMgIGluc3RhbGwucGFja2FnZXMoInRpZHlyIikNCiMgaW5zdGFsbC5wYWNrYWdlcygiY2FyIikNCiMgaW5zdGFsbC5wYWNrYWdlcygibG0uYmV0YSIpDQojIGluc3RhbGwucGFja2FnZXMoImludGVyYWN0aW9ucyIpDQojIGluc3RhbGwucGFja2FnZXMoImVtbWVhbnMiKQ0KIyBpbnN0YWxsLnBhY2thZ2VzKCJnZ2VmZmVjdHMiKQ0KIyBpbnN0YWxsLnBhY2thZ2VzKCJtZWRpYXRpb24iKQ0KIyBpbnN0YWxsLnBhY2thZ2VzKCJsYXZhYW4iKQ0KDQpgYGANCg0KYGBge3J9DQojIGxvYWQgdGhlIGZvbGxvd2luZyBwYWNrYWdlcw0KbGlicmFyeShyZWFkcikNCmxpYnJhcnkocHN5Y2gpDQpsaWJyYXJ5KGRwbHlyKQ0KbGlicmFyeSh0aWR5cikNCiNsaWJyYXJ5KGNhcikNCiNsaWJyYXJ5KGxtLmJldGEpDQojbGlicmFyeShlbW1lYW5zKQ0KI2xpYnJhcnkoZ2dlZmZlY3RzKQ0KI2xpYnJhcnkoaW50ZXJhY3Rpb25zKQ0KbGlicmFyeShtZWRpYXRpb24pDQpsaWJyYXJ5KGxhdmFhbikNCmBgYA0KDQpgYGB7cn0NCiMgdHVybiBvZmYgc2NpZW50aWZpYyBub3RhdGlvbiANCm9wdGlvbnMoc2NpcGVuID0gOTk5KQ0KYGBgDQoNCmBgYHtyfQ0KIyBleGFtaW5lIHRoZSBkYXRhc2V0DQojIHRha2UgYSBsb29rIGF0IHRoZSBDb25zb2xlIHRvIHNlZSB3aGF0IG9iamVjdCBuYW1lIGlzIGFzc2lnbmVkIHRvIHRoZSBkYXRhc2V0IGJ5IFINCkFNQVRVU19kYXRhc2V0X3Byb2Nlc3NlZA0KYGBgDQpgYGB7cn0NCiMgUm93LXdpc2UgYXZlcmFnZQ0KQW54aWV0eV9kYXRhIDwtIEFNQVRVU19kYXRhc2V0X3Byb2Nlc3NlZCAlPiUgDQogIGRwbHlyOjptdXRhdGUoYV9hdmVyYWdlID0gcm93TWVhbnMoZHBseXI6OnNlbGVjdCguLCBBTUFTMSwgQU1BUzIsIEFNQVMzLCBBTUFTNCwgQU1BUzUsIEFNQVM2LCBBTUFTNywgQU1BUzgsIEFNQVM5KSkpDQpBbnhpZXR5X2RhdGENCmBgYA0KDQpgYGB7cn0NCmRlc2NyaWJlKEFueGlldHlfZGF0YVssIGMoInNjb3JlX0FNQVNfdG90YWwiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29yZV9HQUQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29yZV9TRFFfTSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3JlX0JGSV9OIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2V4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2FtcGxlIildKQ0KYGBgDQoNCmBgYHtyfQ0KQW54aWV0eV9kYXRhMSA8LSBBbnhpZXR5X2RhdGEgJT4lIGRyb3BfbmEoInNjb3JlX0FNQVNfdG90YWwiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29yZV9HQUQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29yZV9TRFFfTSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3JlX0JGSV9OIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2V4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2FtcGxlIikNCkFueGlldHlfZGF0YTENCmBgYA0KDQpgYGB7cn0NCkFueGlldHlfZGF0YTIgPC0gQW54aWV0eV9kYXRhICU+JSANCiAgbXV0YXRlKA0KICAgIHNleF9kID0gcmVjb2RlKHNleCwgJ2YnID0gMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICdtJyA9IDEpLA0KICAgIA0KICAgIGdlcl9zdHUgPSByZWNvZGUoc2FtcGxlLCAnZ2VybWFuX3N0dWRlbnRzJyA9ICIxIiksDQogICAgDQogICAgZ2VyX3RlYSA9IHJlY29kZShzYW1wbGUsICdnZXJtYW5fdGVhY2hlcnMnID0gIjIiLCksDQogICAgDQogICAgYmVsX3RlYSA9IHJlY29kZShzYW1wbGUsICdiZWxnaWFuX3RlYWNoZXJzJyA9ICIzIikNCiAgKQ0KYGBgDQoNCmBgYHtyfQ0KdGFibGUoQW54aWV0eV9kYXRhMiRzZXgsIEFueGlldHlfZGF0YTIkc2V4X2QpDQpgYGANCg0KYGBge3J9DQp0YWJsZShBbnhpZXR5X2RhdGEyJHNhbXBsZSwgQW54aWV0eV9kYXRhMiRnZXJfc3R1KQ0KYGBgDQoNCmBgYHtyfQ0KdGFibGUoQW54aWV0eV9kYXRhMiRzYW1wbGUsIEFueGlldHlfZGF0YTIkZ2VyX3RlYSkNCmBgYA0KDQpgYGB7cn0NCnRhYmxlKEFueGlldHlfZGF0YTIkc2FtcGxlLCBBbnhpZXR5X2RhdGEyJGJlbF90ZWEpDQpgYGANCg0KYGBge3J9DQpBbnhpZXR5X2xtIDwtIGxtKHNjb3JlX0FNQVNfdG90YWwgfiBzY29yZV9TRFFfTSArIHNjb3JlX0dBRCArIHNjb3JlX0JGSV9OICsgc2V4X2QgKyBnZXJfc3R1LCANCiAgICAgICAgICAgICAgICAgZGF0YSA9IEFueGlldHlfZGF0YTIpDQpzdW1tYXJ5KEFueGlldHlfbG0pDQphbm92YShBbnhpZXR5X2xtKQ0KYGBgDQoNCmBgYHtyfQ0KDQpgYGANCg0KYGBge3J9DQoNCmBgYA0KDQpgYGB7cn0NCg0KYGBgDQoNCmBgYHtyfQ0KDQpgYGANCg0KYGBge3J9DQoNCmBgYA0KDQpgYGB7cn0NCg0KYGBgDQoNCmBgYHtyfQ0KDQpgYGANCg0KYGBge3J9DQoNCmBgYA0K