These analyses predict iat behavioral, language iat measure, objective equality measures (ggi, wps, percentage women in stem). GGI and WPS are standard measures of gender equality with larger numbers indicating higher equality. Percentage women in stem comes from Stoet and Geary paper (there are also misc other objective variables from this paper)

The analyses are done at three different levels - participant, country, and language.

The resid values are the iat scores (impicit and explicit) residualizing out age, sex (resid1), and age, sex relgiosity, and explicit/implicit score (resid2).

Participant level findings

Country level findings

So the relationship between objective measures of equality and behavioral iat is the same between participant and country level (more equality, more bias), except for one regression (iat~ggi + age etc.).

Language level findings

So, in sum:

PARTICIPANT_DF_PATH <- "by_participant_df.csv"
COUNTRY_DF_PATH <- "by_country_df.csv"
LANGUAGE_DF_PATH <- "by_language_df.csv"


participant_df_raw <- read_csv(PARTICIPANT_DF_PATH) 
participant_df <- participant_df_raw %>%
  mutate(es_iat_sex_age_religion_explicit_resid = as.numeric(es_iat_sex_age_religion_explicit_resid),
          es_explicit_sex_age_religion_iat_resid = as.numeric( es_explicit_sex_age_religion_iat_resid)) %>%
  mutate_at(vars(education, religionid,), as.numeric) %>%
  mutate(age_log = log(age)) %>%
  mutate_at(vars(overall_iat_D_score, age, religionid, explicit_dif, es_iat_sex_age_resid, es_iat_sex_age_religion_explicit_resid, es_explicit_sex_age_implicit_resid, 
                 es_explicit_sex_age_religion_iat_resid), scale_this)

country_df <- read_csv(COUNTRY_DF_PATH) %>%
    mutate(es_behavioral_iat_resid2 = as.numeric(es_behavioral_iat_resid2),
          es_behavioral_iat_resid1 = as.numeric(es_behavioral_iat_resid1)) %>%
    mutate_if(is.numeric, scale_this) %>%
   select(-ggi_stoet)

language_df <- read_csv(LANGUAGE_DF_PATH) %>%
    mutate_if(is.numeric, scale_this) %>%
   select(-weapons_google, -career_google)

Participant Level

participant_df_full <- participant_df %>%
  left_join(country_df %>% select(country_code:satisfaction, wiki_language_code), 
            by = c("countryres" = "country_code")) %>%
  left_join(language_df %>% select(career_hand,flowers_google, wiki_language_code))

Raw correlations

participant_df_corr <- participant_df_full %>%
  select_if(is.numeric)
corr_mat <- cor(participant_df_corr, 
                use = "pairwise.complete.obs")

p.mat <- corrplot::cor.mtest(participant_df_corr, 
                  conf.level = (1-ALPHA),  
                  use = "pairwise.complete.obs")$p

corrplot::corrplot(corr_mat, method = "color",  col = cols,
         order = "original", number.cex = .7,
         addCoef.col = "black", 
         p.mat = p.mat, sig.level = ALPHA, insig = "blank", 
         tl.col = "black", tl.srt = 90,
         diag = FALSE)

Regressions

ggi predicts iat score

lm(overall_iat_D_score ~  ggi  + age_log,
data = participant_df_full) %>%
  summary()
## 
## Call:
## lm(formula = overall_iat_D_score ~ ggi + age_log, data = participant_df_full)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.3271 -0.6486  0.0626  0.7068  3.9229 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -0.521775   0.011361 -45.925   <2e-16 ***
## ggi          0.004955   0.004667   1.062    0.288    
## age_log      0.159326   0.003419  46.600   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9973 on 633964 degrees of freedom
##   (29742 observations deleted due to missingness)
## Multiple R-squared:  0.003427,   Adjusted R-squared:  0.003424 
## F-statistic:  1090 on 2 and 633964 DF,  p-value: < 2.2e-16
lm(overall_iat_D_score ~  ggi  + age_log + religionid  + as.factor(sex) ,
data = participant_df_full) %>%
  summary()
## 
## Call:
## lm(formula = overall_iat_D_score ~ ggi + age_log + religionid + 
##     as.factor(sex), data = participant_df_full)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.3077 -0.6384  0.0572  0.6909  3.5071 
## 
## Coefficients:
##                  Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     -0.462288   0.013462  -34.34  < 2e-16 ***
## ggi              0.030926   0.006567    4.71 2.48e-06 ***
## age_log          0.173352   0.004022   43.10  < 2e-16 ***
## religionid       0.026226   0.001504   17.44  < 2e-16 ***
## as.factor(sex)1 -0.332222   0.003384  -98.16  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9807 on 428499 degrees of freedom
##   (235205 observations deleted due to missingness)
## Multiple R-squared:  0.02601,    Adjusted R-squared:  0.02601 
## F-statistic:  2861 on 4 and 428499 DF,  p-value: < 2.2e-16
lm(overall_iat_D_score ~  ggi  + age_log + religionid  + as.factor(sex) + explicit_dif ,
data = participant_df_full) %>%
  summary()
## 
## Call:
## lm(formula = overall_iat_D_score ~ ggi + age_log + religionid + 
##     as.factor(sex) + explicit_dif, data = participant_df_full)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.3404 -0.6298  0.0557  0.6816  3.5516 
## 
## Coefficients:
##                  Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     -0.465285   0.013420 -34.671  < 2e-16 ***
## ggi              0.026584   0.006552   4.057 4.96e-05 ***
## age_log          0.173082   0.004007  43.190  < 2e-16 ***
## religionid       0.018239   0.001499  12.166  < 2e-16 ***
## as.factor(sex)1 -0.334838   0.003371 -99.341  < 2e-16 ***
## explicit_dif     0.138112   0.001419  97.350  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9702 on 423235 degrees of freedom
##   (240468 observations deleted due to missingness)
## Multiple R-squared:  0.04709,    Adjusted R-squared:  0.04708 
## F-statistic:  4183 on 5 and 423235 DF,  p-value: < 2.2e-16
lm(es_iat_sex_age_resid ~  ggi   ,
data = participant_df_full) %>%
  summary()
## 
## Call:
## lm(formula = es_iat_sex_age_resid ~ ggi, data = participant_df_full)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.4848 -0.6494  0.0598  0.7043  4.1454 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)  
## (Intercept) -0.005266   0.002689  -1.959   0.0502 .
## ggi          0.009625   0.004671   2.061   0.0393 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9988 on 633965 degrees of freedom
##   (29742 observations deleted due to missingness)
## Multiple R-squared:  6.699e-06,  Adjusted R-squared:  5.122e-06 
## F-statistic: 4.247 on 1 and 633965 DF,  p-value: 0.03932
lm(es_iat_sex_age_resid ~  wps   ,
data = participant_df_full) %>%
  summary()
## 
## Call:
## lm(formula = es_iat_sex_age_resid ~ wps, data = participant_df_full)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.4853 -0.6493  0.0598  0.7045  4.1449 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -0.042230   0.004910  -8.601   <2e-16 ***
## wps          0.035758   0.004063   8.802   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9988 on 634828 degrees of freedom
##   (28879 observations deleted due to missingness)
## Multiple R-squared:  0.000122,   Adjusted R-squared:  0.0001204 
## F-statistic: 77.47 on 1 and 634828 DF,  p-value: < 2.2e-16

language also iat predicts iat score

lm(overall_iat_D_score ~  career_hand + ggi  + age_log,
data = participant_df_full) %>%
  summary()
## 
## Call:
## lm(formula = overall_iat_D_score ~ career_hand + ggi + age_log, 
##     data = participant_df_full)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.3305 -0.6482  0.0629  0.7066  3.9197 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -0.527970   0.011999 -44.001  < 2e-16 ***
## career_hand  0.023710   0.005934   3.996 6.44e-05 ***
## ggi         -0.010870   0.005707  -1.905   0.0568 .  
## age_log      0.159542   0.003453  46.202  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9971 on 617474 degrees of freedom
##   (46231 observations deleted due to missingness)
## Multiple R-squared:  0.00347,    Adjusted R-squared:  0.003465 
## F-statistic: 716.7 on 3 and 617474 DF,  p-value: < 2.2e-16
lm(es_iat_sex_age_resid ~  career_hand + ggi ,
data = participant_df_full) %>%
  summary()
## 
## Call:
## lm(formula = es_iat_sex_age_resid ~ career_hand + ggi, data = participant_df_full)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.4866 -0.6490  0.0599  0.7040  4.1435 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)   
## (Intercept) -0.012557   0.004498  -2.791  0.00525 **
## career_hand  0.016569   0.005943   2.788  0.00530 **
## ggi          0.004923   0.005710   0.862  0.38862   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9987 on 617475 degrees of freedom
##   (46231 observations deleted due to missingness)
## Multiple R-squared:  1.714e-05,  Adjusted R-squared:  1.39e-05 
## F-statistic: 5.291 on 2 and 617475 DF,  p-value: 0.005039
lm(es_iat_sex_age_resid ~  career_hand + ggi + es_explicit_sex_age_implicit_resid,
data = participant_df_full) %>%
  summary()
## 
## Call:
## lm(formula = es_iat_sex_age_resid ~ career_hand + ggi + es_explicit_sex_age_implicit_resid, 
##     data = participant_df_full)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.4371 -0.6406  0.0575  0.6949  4.1966 
## 
## Coefficients:
##                                     Estimate Std. Error t value Pr(>|t|)
## (Intercept)                        -0.007586   0.004491  -1.689   0.0912
## career_hand                         0.012163   0.005926   2.052   0.0401
## ggi                                 0.003260   0.005688   0.573   0.5665
## es_explicit_sex_age_implicit_resid  0.157157   0.001265 124.231   <2e-16
##                                       
## (Intercept)                        .  
## career_hand                        *  
## ggi                                   
## es_explicit_sex_age_implicit_resid ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9865 on 605858 degrees of freedom
##   (57847 observations deleted due to missingness)
## Multiple R-squared:  0.02486,    Adjusted R-squared:  0.02485 
## F-statistic:  5148 on 3 and 605858 DF,  p-value: < 2.2e-16
lm(es_iat_sex_age_resid ~  career_hand + wps,
data = participant_df_full) %>%
  summary()
## 
## Call:
## lm(formula = es_iat_sex_age_resid ~ career_hand + wps, data = participant_df_full)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -6.487 -0.649  0.060  0.704  4.144 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -0.023902   0.007247  -3.298 0.000972 ***
## career_hand  0.015022   0.005998   2.505 0.012262 *  
## wps          0.012456   0.006133   2.031 0.042252 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9987 on 618338 degrees of freedom
##   (45368 observations deleted due to missingness)
## Multiple R-squared:  2.472e-05,  Adjusted R-squared:  2.149e-05 
## F-statistic: 7.644 on 2 and 618338 DF,  p-value: 0.0004791

Country Level

Raw correlations

country_df_corr <- country_df %>%
  select_if(is.numeric)

corr_mat <- cor(country_df_corr, 
                use = "pairwise.complete.obs")

p.mat <- corrplot::cor.mtest(country_df_corr, 
                  conf.level = (1-ALPHA),  
                  use = "pairwise.complete.obs")$p
corrplot::corrplot(corr_mat, method = "color",  col = cols,
         order = "original", number.cex = .7,
         addCoef.col = "black", 
         p.mat = p.mat, sig.level = ALPHA, insig = "blank", 
         tl.col = "black", tl.srt = 90,
         diag = FALSE)

Regressions

Predicting IAT Scores

Controling for stuff, objective measure ggi is correlated with iat in the predicted direction: more objectively equal, less bias. Wps is predictive in the same direction when you control for age etc. by residualizing it out.

ggi
lm(es_behavioral_iat ~ ggi + participant_sex + participant_age +   participant_religosity + es_behavioral_explicit, 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat ~ ggi + participant_sex + participant_age + 
##     participant_religosity + es_behavioral_explicit, data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.32950 -0.47106 -0.02099  0.40092  1.51753 
## 
## Coefficients:
##                        Estimate Std. Error t value Pr(>|t|)    
## (Intercept)              0.1970     0.1309   1.505 0.140742    
## ggi                     -0.3836     0.1491  -2.572 0.014255 *  
## participant_sex         -0.4452     0.1311  -3.396 0.001647 ** 
## participant_age          0.3756     0.1645   2.283 0.028299 *  
## participant_religosity  -0.3004     0.1272  -2.361 0.023616 *  
## es_behavioral_explicit   0.4954     0.1370   3.616 0.000886 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.7146 on 37 degrees of freedom
##   (193 observations deleted due to missingness)
## Multiple R-squared:  0.5673, Adjusted R-squared:  0.5088 
## F-statistic: 9.701 on 5 and 37 DF,  p-value: 5.567e-06
lm(es_behavioral_iat ~ ggi + es_behavioral_explicit , 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat ~ ggi + es_behavioral_explicit, 
##     data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -2.34493 -0.36726 -0.04691  0.61136  1.54413 
## 
## Coefficients:
##                        Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             0.07831    0.14774   0.530    0.599    
## ggi                    -0.16843    0.15531  -1.084    0.285    
## es_behavioral_explicit  0.65483    0.13760   4.759 2.54e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8329 on 40 degrees of freedom
##   (193 observations deleted due to missingness)
## Multiple R-squared:  0.3645, Adjusted R-squared:  0.3327 
## F-statistic: 11.47 on 2 and 40 DF,  p-value: 0.0001155
ggi-residuals
lm(es_behavioral_iat_resid1 ~ ggi +  es_behavioral_explicit_resid1, 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid1 ~ ggi + es_behavioral_explicit_resid1, 
##     data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -2.08866 -0.46497  0.04488  0.55194  2.05616 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)  
## (Intercept)                   -0.02288    0.17522  -0.131   0.8967  
## ggi                            0.09358    0.17623   0.531   0.5983  
## es_behavioral_explicit_resid1  0.34017    0.15029   2.263   0.0291 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9876 on 40 degrees of freedom
##   (193 observations deleted due to missingness)
## Multiple R-squared:  0.1139, Adjusted R-squared:  0.0696 
## F-statistic: 2.571 on 2 and 40 DF,  p-value: 0.08905
lm(es_behavioral_iat_resid2 ~ ggi +  es_behavioral_explicit_resid2, 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid2 ~ ggi + es_behavioral_explicit_resid2, 
##     data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.92618 -0.53342 -0.02261  0.65292  2.40690 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)
## (Intercept)                   -0.04014    0.18257  -0.220    0.827
## ggi                            0.12988    0.18191   0.714    0.479
## es_behavioral_explicit_resid2  0.14065    0.16403   0.857    0.396
## 
## Residual standard error: 1.034 on 40 degrees of freedom
##   (193 observations deleted due to missingness)
## Multiple R-squared:  0.03162,    Adjusted R-squared:  -0.0168 
## F-statistic: 0.6531 on 2 and 40 DF,  p-value: 0.5259
lm(es_behavioral_iat_resid1 ~ ggi  , 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid1 ~ ggi, data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -2.00089 -0.71342 -0.07046  0.77283  2.35158 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept)  0.02204    0.18263   0.121    0.905
## ggi          0.02373    0.18202   0.130    0.897
## 
## Residual standard error: 1.036 on 41 degrees of freedom
##   (193 observations deleted due to missingness)
## Multiple R-squared:  0.0004144,  Adjusted R-squared:  -0.02397 
## F-statistic: 0.017 on 1 and 41 DF,  p-value: 0.8969
wps
lm(es_behavioral_iat ~ wps + participant_sex + participant_age +   participant_religosity + es_behavioral_explicit, 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat ~ wps + participant_sex + participant_age + 
##     participant_religosity + es_behavioral_explicit, data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.33347 -0.53731 -0.03152  0.55331  1.69796 
## 
## Coefficients:
##                        Estimate Std. Error t value Pr(>|t|)   
## (Intercept)            -0.05305    0.16187  -0.328  0.74494   
## wps                     0.08145    0.16028   0.508  0.61427   
## participant_sex        -0.32031    0.13715  -2.336  0.02490 * 
## participant_age         0.16766    0.16650   1.007  0.32033   
## participant_religosity -0.25887    0.13764  -1.881  0.06768 . 
## es_behavioral_explicit  0.43123    0.15228   2.832  0.00736 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.7649 on 38 degrees of freedom
##   (192 observations deleted due to missingness)
## Multiple R-squared:  0.4969, Adjusted R-squared:  0.4307 
## F-statistic: 7.506 on 5 and 38 DF,  p-value: 5.554e-05
wps-residuals
lm(es_behavioral_iat_resid1 ~ wps +  es_behavioral_explicit_resid1, 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid1 ~ wps + es_behavioral_explicit_resid1, 
##     data = country_df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.7466 -0.5119 -0.0196  0.5634  2.0836 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)   
## (Intercept)                    -0.3138     0.1725  -1.819  0.07625 . 
## wps                             0.4454     0.1489   2.992  0.00468 **
## es_behavioral_explicit_resid1   0.3373     0.1336   2.524  0.01556 * 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8919 on 41 degrees of freedom
##   (192 observations deleted due to missingness)
## Multiple R-squared:  0.2651, Adjusted R-squared:  0.2293 
## F-statistic: 7.395 on 2 and 41 DF,  p-value: 0.001809
lm(es_behavioral_iat_resid1 ~ wps  , 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid1 ~ wps, data = country_df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.6239 -0.5687 -0.1640  0.7153  2.4369 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)   
## (Intercept)  -0.2923     0.1830  -1.598  0.11764   
## wps           0.4317     0.1580   2.732  0.00917 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9472 on 42 degrees of freedom
##   (192 observations deleted due to missingness)
## Multiple R-squared:  0.1509, Adjusted R-squared:  0.1307 
## F-statistic: 7.464 on 1 and 42 DF,  p-value: 0.009166

Predicting women in stem

Both iat and ggi are predictors of percentage women in stem. The ggi measure is in the same direction as Stoet. The IAT measure is in the predicted direction: more biased, few women in stem. Explicit judgement do not predict percentage of women in stem. It does not predict any of the other measures for Stoet paper.

model with controls
lm(per_women_stem ~  es_behavioral_iat + ggi+  es_behavioral_explicit + participant_sex + participant_age + participant_religosity  , 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = per_women_stem ~ es_behavioral_iat + ggi + es_behavioral_explicit + 
##     participant_sex + participant_age + participant_religosity, 
##     data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.01740 -0.38235 -0.05711  0.32865  1.20424 
## 
## Coefficients:
##                        Estimate Std. Error t value Pr(>|t|)   
## (Intercept)             0.33251    0.15192   2.189  0.03859 * 
## es_behavioral_iat      -0.38704    0.17343  -2.232  0.03524 * 
## ggi                    -0.53733    0.17205  -3.123  0.00462 **
## es_behavioral_explicit  0.14002    0.16647   0.841  0.40859   
## participant_sex        -0.20763    0.16400  -1.266  0.21765   
## participant_age         0.08367    0.17793   0.470  0.64243   
## participant_religosity  0.02435    0.19472   0.125  0.90153   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.6282 on 24 degrees of freedom
##   (205 observations deleted due to missingness)
## Multiple R-squared:  0.5129, Adjusted R-squared:  0.3912 
## F-statistic: 4.212 on 6 and 24 DF,  p-value: 0.004933
residuals
lm(per_women_stem ~ es_behavioral_iat_resid1 + ggi +  es_behavioral_explicit_resid1, 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = per_women_stem ~ es_behavioral_iat_resid1 + ggi + 
##     es_behavioral_explicit_resid1, data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.90882 -0.28145 -0.02449  0.39670  1.13701 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                    0.27505    0.11442   2.404 0.023354 *  
## es_behavioral_iat_resid1      -0.44082    0.10480  -4.206 0.000256 ***
## ggi                           -0.43199    0.10709  -4.034 0.000404 ***
## es_behavioral_explicit_resid1  0.15214    0.09734   1.563 0.129684    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5327 on 27 degrees of freedom
##   (205 observations deleted due to missingness)
## Multiple R-squared:  0.606,  Adjusted R-squared:  0.5622 
## F-statistic: 13.84 on 3 and 27 DF,  p-value: 1.174e-05
lm(per_women_stem ~ es_behavioral_iat_resid1 + ggi, 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = per_women_stem ~ es_behavioral_iat_resid1 + ggi, 
##     data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.91065 -0.33365 -0.05943  0.31671  1.20908 
## 
## Coefficients:
##                          Estimate Std. Error t value Pr(>|t|)    
## (Intercept)               0.28291    0.11722   2.414 0.022590 *  
## es_behavioral_iat_resid1 -0.37451    0.09827  -3.811 0.000696 ***
## ggi                      -0.46821    0.10721  -4.367 0.000156 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5462 on 28 degrees of freedom
##   (205 observations deleted due to missingness)
## Multiple R-squared:  0.5703, Adjusted R-squared:  0.5396 
## F-statistic: 18.58 on 2 and 28 DF,  p-value: 7.314e-06
lm(per_women_stem ~ es_behavioral_iat_resid1 + wps +  es_behavioral_explicit_resid1, 
data = country_df) %>%
  summary()
## 
## Call:
## lm(formula = per_women_stem ~ es_behavioral_iat_resid1 + wps + 
##     es_behavioral_explicit_resid1, data = country_df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.18898 -0.38351 -0.08598  0.29577  1.12183 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)   
## (Intercept)                     0.3993     0.2020   1.977  0.05833 . 
## es_behavioral_iat_resid1       -0.3952     0.1317  -3.001  0.00573 **
## wps                            -0.4039     0.1824  -2.215  0.03540 * 
## es_behavioral_explicit_resid1   0.2099     0.1114   1.885  0.07020 . 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.6204 on 27 degrees of freedom
##   (205 observations deleted due to missingness)
## Multiple R-squared:  0.4656, Adjusted R-squared:  0.4062 
## F-statistic:  7.84 on 3 and 27 DF,  p-value: 0.00064

Language Level

Raw correlations

language_df_with_ggi <- country_df %>%
  select(ggi, wps, wiki_language_code,es_behavioral_iat_resid2, es_behavioral_iat_resid1) %>%
  group_by(wiki_language_code)  %>%
  summarize_all(mean, na.rm = T) %>%
  left_join(language_df %>% select(-es_behavioral_iat_resid2, -es_behavioral_iat_resid1)) %>%
  select(-contains("weighted"), -contains("stoet")) 

language_df_corr <- language_df_with_ggi %>%
  select_if(is.numeric)
corr_mat <- cor(language_df_corr, 
                use = "pairwise.complete.obs")

p.mat <- corrplot::cor.mtest(language_df_corr, 
                  conf.level = (1-ALPHA),  
                  use = "pairwise.complete.obs")$p

corrplot::corrplot(corr_mat, method = "color",  col = cols,
         order = "original", number.cex = .7,
         addCoef.col = "black", 
         p.mat = p.mat, sig.level = ALPHA, insig = "blank", 
         tl.col = "black", tl.srt = 90,
         diag = FALSE)

Regressions predicting behavioral iat

Career language

behvioral iat is correlated with language measure, but goes away when you control for mean age

model with controls
lm(es_behavioral_iat ~  career_hand,
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat ~ career_hand, data = language_df_with_ggi)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.21066 -0.58248  0.09664  0.43002  1.45541 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)  
## (Intercept)   0.1356     0.1765   0.769    0.453  
## career_hand   0.3660     0.1816   2.015    0.061 .
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.7488 on 16 degrees of freedom
##   (14 observations deleted due to missingness)
## Multiple R-squared:  0.2025, Adjusted R-squared:  0.1526 
## F-statistic: 4.062 on 1 and 16 DF,  p-value: 0.06098
lm(es_behavioral_iat  ~  career_hand  + participant_age ,
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat ~ career_hand + participant_age, 
##     data = language_df_with_ggi)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.28063 -0.33293  0.03798  0.25808  1.19697 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)   
## (Intercept)     0.001133   0.151832   0.007  0.99414   
## career_hand     0.028335   0.187758   0.151  0.88205   
## participant_age 0.640442   0.216536   2.958  0.00978 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.6146 on 15 degrees of freedom
##   (14 observations deleted due to missingness)
## Multiple R-squared:  0.4963, Adjusted R-squared:  0.4291 
## F-statistic: 7.388 on 2 and 15 DF,  p-value: 0.005842
lm(es_behavioral_iat  ~  career_hand  + ggi +  participant_age + participant_sex +  + participant_religosity + es_behavioral_explicit,
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat ~ career_hand + ggi + participant_age + 
##     participant_sex + +participant_religosity + es_behavioral_explicit, 
##     data = language_df_with_ggi)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.52923 -0.20804 -0.05642  0.21805  0.69073 
## 
## Coefficients:
##                        Estimate Std. Error t value Pr(>|t|)  
## (Intercept)              0.1381     0.1426   0.968   0.3558  
## career_hand              0.1746     0.1601   1.090   0.3012  
## ggi                     -0.3974     0.1590  -2.499   0.0315 *
## participant_age          0.4779     0.2294   2.083   0.0639 .
## participant_sex         -0.4300     0.2373  -1.812   0.1001  
## participant_religosity  -0.3725     0.1770  -2.105   0.0616 .
## es_behavioral_explicit   0.3407     0.1655   2.058   0.0666 .
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.4795 on 10 degrees of freedom
##   (15 observations deleted due to missingness)
## Multiple R-squared:  0.7851, Adjusted R-squared:  0.6562 
## F-statistic:  6.09 on 6 and 10 DF,  p-value: 0.006489
Residuals
lm(es_behavioral_iat_resid1 ~  career_hand,
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid1 ~ career_hand, data = language_df_with_ggi)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.75133 -0.59491  0.01759  0.57257  1.29088 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept)  0.05597    0.20388   0.275    0.787
## career_hand  0.32889    0.20979   1.568    0.137
## 
## Residual standard error: 0.865 on 16 degrees of freedom
##   (14 observations deleted due to missingness)
## Multiple R-squared:  0.1332, Adjusted R-squared:  0.07898 
## F-statistic: 2.458 on 1 and 16 DF,  p-value: 0.1365
lm(es_behavioral_iat_resid2 ~  career_hand,
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid2 ~ career_hand, data = language_df_with_ggi)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.7416 -0.5723  0.1985  0.6177  1.1716 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept)  0.01993    0.21391   0.093    0.927
## career_hand  0.23343    0.22011   1.061    0.305
## 
## Residual standard error: 0.9075 on 16 degrees of freedom
##   (14 observations deleted due to missingness)
## Multiple R-squared:  0.06568,    Adjusted R-squared:  0.007283 
## F-statistic: 1.125 on 1 and 16 DF,  p-value: 0.3047
lm(es_behavioral_iat_resid1  ~  career_hand  + es_behavioral_explicit_resid1 + ggi ,
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid1 ~ career_hand + es_behavioral_explicit_resid1 + 
##     ggi, data = language_df_with_ggi)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.84998 -0.28282  0.05293  0.52773  1.38202 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)
## (Intercept)                   -0.06749    0.24689  -0.273    0.789
## career_hand                    0.16006    0.24562   0.652    0.526
## es_behavioral_explicit_resid1  0.28702    0.24106   1.191    0.255
## ggi                            0.28268    0.24786   1.140    0.275
## 
## Residual standard error: 0.8795 on 13 degrees of freedom
##   (15 observations deleted due to missingness)
## Multiple R-squared:  0.2495, Adjusted R-squared:  0.07635 
## F-statistic: 1.441 on 3 and 13 DF,  p-value: 0.2761
lm(es_behavioral_iat_resid2  ~  career_hand + ggi   ,
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid2 ~ career_hand + ggi, data = language_df_with_ggi)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.6840 -0.4930  0.2261  0.5690  1.3079 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.08812    0.23557  -0.374    0.714
## career_hand  0.09178    0.22948   0.400    0.695
## ggi          0.34858    0.22855   1.525    0.149
## 
## Residual standard error: 0.8707 on 14 degrees of freedom
##   (15 observations deleted due to missingness)
## Multiple R-squared:  0.1999, Adjusted R-squared:  0.08556 
## F-statistic: 1.749 on 2 and 14 DF,  p-value: 0.21
Flowers language

Flowers not predictive.

lm(es_behavioral_iat_resid1  ~  flowers_google  + es_behavioral_explicit_resid1 + ggi ,
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = es_behavioral_iat_resid1 ~ flowers_google + es_behavioral_explicit_resid1 + 
##     ggi, data = language_df_with_ggi)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -2.18442 -0.52696  0.03634  0.49360  1.78979 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)  
## (Intercept)                    0.07444    0.21709   0.343   0.7354  
## flowers_google                 0.20774    0.25041   0.830   0.4171  
## es_behavioral_explicit_resid1  0.37039    0.20495   1.807   0.0866 .
## ggi                            0.14214    0.21813   0.652   0.5225  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9658 on 19 degrees of freedom
##   (9 observations deleted due to missingness)
## Multiple R-squared:  0.1597, Adjusted R-squared:  0.02699 
## F-statistic: 1.203 on 3 and 19 DF,  p-value: 0.3354

Regressions Predicting Stoet measures

women in stem

lm(per_women_stem ~  ggi+  career_hand   , 
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = per_women_stem ~ ggi + career_hand, data = language_df_with_ggi)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.1753 -0.2426  0.0417  0.5181  0.7913 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)   
## (Intercept)  0.419735   0.198945   2.110  0.05860 . 
## ggi         -0.725624   0.177116  -4.097  0.00177 **
## career_hand  0.002792   0.184412   0.015  0.98819   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.6626 on 11 degrees of freedom
##   (18 observations deleted due to missingness)
## Multiple R-squared:  0.6264, Adjusted R-squared:  0.5585 
## F-statistic: 9.223 on 2 and 11 DF,  p-value: 0.004446

satisfaction

lm(satisfaction ~  ggi +  career_hand , 
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = satisfaction ~ ggi + career_hand, data = language_df_with_ggi)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.0251 -0.2948  0.1064  0.3189  0.7068 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)   
## (Intercept) -0.06957    0.13531  -0.514  0.61519   
## ggi          0.48354    0.13128   3.683  0.00246 **
## career_hand  0.41321    0.13181   3.135  0.00731 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5001 on 14 degrees of freedom
##   (15 observations deleted due to missingness)
## Multiple R-squared:  0.7321, Adjusted R-squared:  0.6939 
## F-statistic: 19.13 on 2 and 14 DF,  p-value: 9.895e-05
lm(satisfaction ~  ggi+  flowers_google, 
data = language_df_with_ggi) %>%
  summary()
## 
## Call:
## lm(formula = satisfaction ~ ggi + flowers_google, data = language_df_with_ggi)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.09834 -0.39545 -0.08244  0.36479  1.17247 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    -0.30919    0.14989  -2.063   0.0531 .  
## ggi             0.75332    0.14436   5.218  4.9e-05 ***
## flowers_google -0.09499    0.16304  -0.583   0.5670    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.6456 on 19 degrees of freedom
##   (10 observations deleted due to missingness)
## Multiple R-squared:  0.6072, Adjusted R-squared:  0.5658 
## F-statistic: 14.69 on 2 and 19 DF,  p-value: 0.0001395