Load data

vcs <- rio::import("data_complete_2021_zscored.rds")
vcs <- vcs %>% 
  mutate(
    age = if_else(dataset == 9, 20, age)/10,
    age_se = if_else(dataset == 9, 3, 0.5)/10
  )

vcs <- vcs %>% filter(!is.na(f0), !is.na(pf), !is.na(age))
vcs_novowels <- vcs %>% filter(! dataset %in% c(1, 10))
xtabs(~ is.na(dominance) + sex, vcs_novowels)
##                 sex
## is.na(dominance) female male
##            FALSE    491  494
##            TRUE     481  337
xtabs(~ is.na(extra) + sex, vcs_novowels)
##             sex
## is.na(extra) female male
##        FALSE    816  529
##        TRUE     156  302
vcs_within <- rio::import("data_complete_2021_within_zscored.rds")

vcs_nooutlier <- rio::import("data_complete_2021_zscored_no_outliers.rds")


var_label(vcs$dominance) <- "Dominance"
var_label(vcs$neuro) <- "Neuroticism"
var_label(vcs$agree) <- "Agreeableness"
var_label(vcs$extra) <- "Extraversion"
var_label(vcs$openn) <- "Openness"
var_label(vcs$consc) <- "Conscientiousness"
var_label(vcs$soir_full) <- "Unrestricted sociosexuality"
var_label(vcs$f0) <- "Voice pitch"
var_label(vcs$pf) <- "Formants"
vcs$sex_c <- vcs$sex
contrasts(vcs$sex) <- contr.helmert(2)
var_label(vcs$sex) <- "Sex"
set.seed(1)
var_label(vcs$age) <- "Age"

vcs_nooutlier <- vcs_nooutlier %>% 
  mutate(
    age = if_else(dataset == 9, 20, age)/10,
    age_se = if_else(dataset == 9, 3, 0.5)/10
  )

vcs_within <- vcs_within %>% 
  mutate(
    age = if_else(dataset == 9, 20, age)/10,
    age_se = if_else(dataset == 9, 3, 0.5)/10
  )

warmup <- 2000
iter <- warmup + 2000
chains <- 4
control <- list(adapt_delta = 0.99)
priors <- c(
  prior(normal(0, 3), class = b)
)
library(brms)
options(mc.cores = parallel::detectCores(), brms.backend = "cmdstanr")
rstan::rstan_options(auto_write = TRUE)

variable_labels <- c("Intercept"= "Intercept",  "sex1" = "Sex [male]", "bsp_meageage_se" = "Age±SE", "f0" = "Voice pitch (f0)", "pf" = " Formant position (Pf)", "age" = "Age", "f0:sex1" = "Voice pitch (f0) × Sex")
effect_labels <- c("b_Intercept"= "Intercept",  "b_sex1" = "Sex [male]", "bsp_meageage_se" = "Age±SE", "b_f0" = "Voice pitch (f0)", "b_pf" = " Formant position (Pf)", "b_age" = "Age", "b_f0.sex1" = "Voice pitch (f0) × Sex")

Check Hypothesis 1: Dominance

Participants with lower voice pitch will have a more dominant personality.

Interpretation: Little difference across dataset specifications (whether standardized globally, within dataset, whether outliers or vowel-based data were omitted). No clear effect of individual formants (f1-f4).

Models

h1_simple <- brm(dominance ~ f0 + pf + sex + age + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, save_mevars = TRUE, 
          file = "models/dominance/h1_simple")

h1_simple_within <- update(h1_simple, newdata = vcs_within, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 3 finished in 3.5 seconds.
## Chain 2 finished in 3.5 seconds.
## Chain 4 finished in 3.7 seconds.
## Chain 1 finished in 4.1 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 3.7 seconds.
## Total execution time: 4.7 seconds.
h1_simple_nooutlier <- update(h1_simple, newdata = vcs_nooutlier, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 4 finished in 3.8 seconds.
## Chain 1 finished in 4.3 seconds.
## Chain 2 finished in 4.3 seconds.
## Chain 3 finished in 4.2 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 4.1 seconds.
## Total execution time: 4.6 seconds.
h1_simple_novowels <- update(h1_simple, newdata = vcs_novowels, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 1 finished in 3.8 seconds.
## Chain 2 finished in 4.0 seconds.
## Chain 4 finished in 4.3 seconds.
## Chain 3 finished in 4.5 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 4.2 seconds.
## Total execution time: 4.9 seconds.
h1_simple_formants <- update(h1_simple, newdata = vcs, formula = . ~ . - pf + f1 + f2 + f3 + f4, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 4 finished in 5.1 seconds.
## Chain 2 finished in 5.2 seconds.
## Chain 3 finished in 5.3 seconds.
## Chain 1 finished in 5.5 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 5.3 seconds.
## Total execution time: 5.9 seconds.
list(`Preregistered` = h1_simple,
     `Standardized within` = h1_simple_within,
     `No outliers` = h1_simple_nooutlier,
     `No vowels` = h1_simple_novowels) %>% 
  map(~ broom.mixed::tidy(., conf.int = T)) %>% 
  bind_rows(.id = "Specification") %>% 
  filter(!term %in% c("(Intercept)"),
         !term %in% c("sd__(Intercept)"),
         !term %in% c("sd__Observation")
         ) %>% 
  ggplot(aes(x = Specification, y = estimate, ymin = conf.low, ymax = conf.high)) + 
  geom_pointrange() +
  ggrepel::geom_text_repel(aes(label = sprintf("%.2f [%.2f;%.2f]", estimate, conf.low,  conf.high )), nudge_x = 0.15, size = 3) +
  facet_wrap(~ term) +
  coord_flip()

list(`Preregistered` = h1_simple,
     `Single formants` = h1_simple_formants) %>% 
  map(~ broom.mixed::tidy(., conf.int = T)) %>% 
  bind_rows(.id = "Specification") %>% 
  filter(term %in% c("pf", "f1", "f2", "f3", "f4")) %>% 
  ggplot(aes(x = term, y = estimate, ymin = conf.low, ymax = conf.high, color = Specification)) + 
  geom_pointrange() +
  ggrepel::geom_text_repel(aes(label = sprintf("%.2f [%.2f;%.2f]", estimate, conf.low,  conf.high )), nudge_x = 0.15, size = 3) +
  coord_flip()

Model details
summary(h1_simple)
## Warning: There were 3 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: dominance ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs (Number of observations: 985) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 4) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.53      0.41     0.16     1.68 1.00     1993     2686
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.07      0.37    -0.80     0.68 1.00     2616     2533
## f0           -0.27      0.09    -0.45    -0.08 1.00     5357     5343
## pf           -0.00      0.07    -0.13     0.12 1.00     6495     5685
## sex1         -0.30      0.11    -0.52    -0.08 1.00     4465     4603
## age           0.04      0.06    -0.08     0.17 1.00     7482     5631
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.02     0.93     1.02 1.00     8271     5405
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_within)
## Warning: There were 335 divergent transitions after warmup. Increasing
## adapt_delta above may help. See http://mc-stan.org/misc/warnings.html#divergent-
## transitions-after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: dominance ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs_within (Number of observations: 985) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 4) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.54      0.47     0.15     2.26 1.05       99       18
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.12      0.38    -1.19     0.48 1.04      107       22
## f0           -0.26      0.09    -0.45    -0.08 1.01      779      666
## pf            0.00      0.07    -0.13     0.13 1.01     3711     4065
## sex1         -0.28      0.11    -0.51    -0.06 1.01     1331      648
## age           0.04      0.06    -0.08     0.16 1.00     2072     3893
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.02     0.93     1.01 1.01      341     3835
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_nooutlier)
## Warning: There were 57 divergent transitions after warmup. Increasing
## adapt_delta above may help. See http://mc-stan.org/misc/warnings.html#divergent-
## transitions-after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: dominance ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs_nooutlier (Number of observations: 983) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 4) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.47      0.25     0.17     1.11 1.00     2129     2847
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.09      0.29    -0.70     0.49 1.00     2614     2761
## f0           -0.29      0.10    -0.47    -0.10 1.00     5047     5169
## pf           -0.00      0.07    -0.13     0.13 1.00     5144     4646
## sex1         -0.31      0.11    -0.53    -0.09 1.00     4383     5240
## age           0.05      0.06    -0.08     0.17 1.00     6374     5010
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.02     0.93     1.02 1.00     6992     5123
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_novowels)
## Warning: There were 143 divergent transitions after warmup. Increasing
## adapt_delta above may help. See http://mc-stan.org/misc/warnings.html#divergent-
## transitions-after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: dominance ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs_novowels (Number of observations: 985) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 4) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.51      0.32     0.17     1.46 1.01      462      122
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.07      0.33    -0.75     0.67 1.00      486      112
## f0           -0.27      0.09    -0.46    -0.09 1.00     2545     5273
## pf           -0.00      0.06    -0.13     0.13 1.00     4953     5217
## sex1         -0.30      0.11    -0.52    -0.09 1.00     3495     3520
## age           0.04      0.06    -0.08     0.16 1.00     6277     5489
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.02     0.93     1.02 1.00     6219     4984
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_formants)
## Warning: There were 67 divergent transitions after warmup. Increasing
## adapt_delta above may help. See http://mc-stan.org/misc/warnings.html#divergent-
## transitions-after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: dominance ~ f0 + sex + age + (1 | dataset) + f1 + f2 + f3 + f4 
##    Data: vcs (Number of observations: 985) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 4) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.52      0.31     0.18     1.38 1.00     1855     1065
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.06      0.31    -0.69     0.57 1.00     2840     1367
## f0           -0.27      0.09    -0.45    -0.08 1.00     6653     6132
## sex1         -0.29      0.12    -0.53    -0.07 1.00     5842     5118
## age           0.04      0.06    -0.08     0.17 1.00     6893     4790
## f1           -0.03      0.04    -0.11     0.05 1.00     8061     4392
## f2            0.05      0.06    -0.07     0.18 1.00     7920     4879
## f3            0.04      0.08    -0.12     0.21 1.00     7753     4939
## f4           -0.06      0.09    -0.23     0.11 1.00     7110     4902
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.02     0.93     1.02 1.00     8857     5317
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).

Check Hypothesis 2: Extraversion

Participants with lower voice pitch will score higher on extraversion

Interpretation: Little difference across dataset specifications (whether standardized globally, within dataset, whether outliers or vowel-based data were omitted). No clear effect of individual formants (f1-f4).

Models

h1_simple <- brm(extra ~ f0 + pf + sex + age + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, save_mevars = TRUE, 
          file = "models/extra/h1_simple")


h1_simple_within <- update(h1_simple, newdata = vcs_within, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 1 finished in 32.1 seconds.
## Chain 4 finished in 33.0 seconds.
## Chain 2 finished in 33.1 seconds.
## Chain 3 finished in 33.9 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 33.0 seconds.
## Total execution time: 34.2 seconds.
h1_simple_nooutlier <- update(h1_simple, newdata = vcs_nooutlier, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 3 finished in 32.0 seconds.
## Chain 1 finished in 32.2 seconds.
## Chain 4 finished in 32.2 seconds.
## Chain 2 finished in 32.7 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 32.3 seconds.
## Total execution time: 33.2 seconds.
h1_simple_novowels <- update(h1_simple, newdata = vcs_novowels, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 2 finished in 30.8 seconds.
## Chain 4 finished in 31.7 seconds.
## Chain 3 finished in 33.6 seconds.
## Chain 1 finished in 40.0 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 34.0 seconds.
## Total execution time: 40.4 seconds.
h1_simple_formants <- update(h1_simple, newdata = vcs, formula = . ~ . - pf + f1 + f2 + f3 + f4, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 1 finished in 32.6 seconds.
## Chain 4 finished in 33.5 seconds.
## Chain 3 finished in 33.6 seconds.
## Chain 2 finished in 34.7 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 33.6 seconds.
## Total execution time: 35.2 seconds.
list(`Preregistered` = h1_simple,
     `Standardized within` = h1_simple_within,
     `No outliers` = h1_simple_nooutlier,
     `No vowels` = h1_simple_novowels) %>% 
  map(~ broom.mixed::tidy(., conf.int = T)) %>% 
  bind_rows(.id = "Specification") %>% 
  filter(!term %in% c("(Intercept)"),
         !term %in% c("sd__(Intercept)"),
         !term %in% c("sd__Observation")
         ) %>% 
  ggplot(aes(x = Specification, y = estimate, ymin = conf.low, ymax = conf.high)) + 
  geom_pointrange() +
  ggrepel::geom_text_repel(aes(label = sprintf("%.2f [%.2f;%.2f]", estimate, conf.low,  conf.high )), nudge_x = 0.15, size = 3) +
  facet_wrap(~ term) +
  coord_flip()
## Warning in tidy.brmsfit(., conf.int = T): some parameter names contain
## underscores: term naming may be unreliable!
## Warning in tidy.brmsfit(., conf.int = T): some parameter names contain
## underscores: term naming may be unreliable!

## Warning in tidy.brmsfit(., conf.int = T): some parameter names contain
## underscores: term naming may be unreliable!

## Warning in tidy.brmsfit(., conf.int = T): some parameter names contain
## underscores: term naming may be unreliable!

list(`Preregistered` = h1_simple,
     `Single formants` = h1_simple_formants) %>% 
  map(~ broom.mixed::tidy(., conf.int = T)) %>% 
  bind_rows(.id = "Specification") %>% 
  filter(term %in% c("pf", "f1", "f2", "f3", "f4")) %>% 
  ggplot(aes(x = term, y = estimate, ymin = conf.low, ymax = conf.high, color = Specification)) + 
  geom_pointrange() +
  ggrepel::geom_text_repel(aes(label = sprintf("%.2f [%.2f;%.2f]", estimate, conf.low,  conf.high )), nudge_x = 0.15, size = 3) +
  coord_flip()
## Warning in tidy.brmsfit(., conf.int = T): some parameter names contain
## underscores: term naming may be unreliable!

## Warning in tidy.brmsfit(., conf.int = T): some parameter names contain
## underscores: term naming may be unreliable!

Model details
summary(h1_simple)
## Warning: Parts of the model have not converged (some Rhats are > 1.05). Be
## careful when analysing the results! We recommend running more iterations and/or
## setting stronger priors.
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: extra ~ f0 + pf + sex + me(age, age_se) + (1 | dataset) 
##    Data: vcs (Number of observations: 1433) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 7) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.35      0.15     0.16     0.73 1.00     2404     4372
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept       0.19      0.20    -0.21     0.58 1.00     3114     4163
## f0             -0.23      0.08    -0.38    -0.08 1.00     7221     6134
## pf              0.08      0.05    -0.03     0.18 1.00     8287     6673
## sex1           -0.28      0.09    -0.46    -0.10 1.00     6190     6003
## meageage_se    -0.11      0.06    -0.22     0.01 1.00     7134     5697
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.02     0.94     1.01 1.00    12826     5752
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_within)
## Warning: Parts of the model have not converged (some Rhats are > 1.05). Be
## careful when analysing the results! We recommend running more iterations and/or
## setting stronger priors.
## Warning: There were 1 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: extra ~ f0 + pf + sex + me(age, age_se) + (1 | dataset) 
##    Data: vcs_within (Number of observations: 1433) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 7) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.41      0.18     0.20     0.86 1.00     3340     4542
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept       0.19      0.22    -0.25     0.62 1.00     4422     4731
## f0             -0.19      0.07    -0.34    -0.06 1.00    13897     5874
## pf              0.09      0.06    -0.02     0.20 1.00    14738     5699
## sex1           -0.24      0.09    -0.42    -0.06 1.00    11345     5436
## meageage_se    -0.10      0.06    -0.21     0.01 1.00    14493     5490
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.02     0.94     1.01 1.00    19129     5708
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_nooutlier)
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: extra ~ f0 + pf + sex + me(age, age_se) + (1 | dataset) 
##    Data: vcs_nooutlier (Number of observations: 1430) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 7) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.34      0.15     0.16     0.72 1.00     3474     4314
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept       0.18      0.20    -0.23     0.57 1.00     5146     5480
## f0             -0.24      0.08    -0.39    -0.08 1.00    14255     6501
## pf              0.07      0.06    -0.04     0.17 1.00    14622     6190
## sex1           -0.29      0.09    -0.48    -0.11 1.00    10952     6690
## meageage_se    -0.10      0.06    -0.22     0.01 1.00    11853     5833
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.02     0.94     1.01 1.00    21269     5824
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_novowels)
## Warning: There were 3 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: extra ~ f0 + pf + sex + me(age, age_se) + (1 | dataset) 
##    Data: vcs_novowels (Number of observations: 1345) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 6) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.40      0.20     0.18     0.92 1.00     2901     4891
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept       0.15      0.23    -0.32     0.61 1.00     4521     4450
## f0             -0.21      0.08    -0.37    -0.06 1.00    13855     6283
## pf              0.09      0.06    -0.02     0.20 1.00    13996     6469
## sex1           -0.25      0.10    -0.44    -0.07 1.00    10973     6129
## meageage_se    -0.09      0.06    -0.21     0.01 1.00    13554     6175
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.95      0.02     0.92     0.99 1.00    19088     6132
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_formants)
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: extra ~ f0 + sex + me(age, age_se) + (1 | dataset) + f1 + f2 + f3 + f4 
##    Data: vcs (Number of observations: 1433) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 7) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.38      0.16     0.18     0.81 1.00     3710     4644
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept       0.18      0.21    -0.24     0.60 1.00     5958     5200
## f0             -0.23      0.08    -0.38    -0.07 1.00    14095     6585
## sex1           -0.32      0.10    -0.51    -0.13 1.00    12943     6283
## f1              0.03      0.04    -0.04     0.10 1.00    18403     6138
## f2              0.10      0.05    -0.01     0.20 1.00    15838     5494
## f3              0.02      0.07    -0.12     0.15 1.00    17298     6094
## f4             -0.07      0.07    -0.21     0.06 1.00    18077     5747
## meageage_se    -0.11      0.06    -0.22     0.00 1.00    16396     5899
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.02     0.94     1.01 1.00    21407     5625
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).

Check Hypothesis 3: Agreeableness

Participants with lower voice pitch will score higher on agreeableness.

Interpretation: Little difference across dataset specifications (whether standardized globally, within dataset, whether outliers or vowel-based data were omitted). No clear effect of individual formants f1, f2, f4, the 95% CI for f3 nominally excludes zero.

Models

h1_simple <- brm(agree ~ f0 + pf + sex + age + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, save_mevars = TRUE, 
          file = "models/agree/h1_simple")


h1_simple_within <- update(h1_simple, newdata = vcs_within, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 4 finished in 4.1 seconds.
## Chain 3 finished in 4.3 seconds.
## Chain 2 finished in 4.7 seconds.
## Chain 1 finished in 5.0 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 4.5 seconds.
## Total execution time: 5.5 seconds.
h1_simple_nooutlier <- update(h1_simple, newdata = vcs_nooutlier, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 3 finished in 4.5 seconds.
## Chain 2 finished in 4.6 seconds.
## Chain 1 finished in 4.8 seconds.
## Chain 4 finished in 5.5 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 4.8 seconds.
## Total execution time: 5.7 seconds.
h1_simple_novowels <- update(h1_simple, newdata = vcs_novowels, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 4 finished in 4.5 seconds.
## Chain 1 finished in 4.8 seconds.
## Chain 3 finished in 5.1 seconds.
## Chain 2 finished in 5.4 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 5.0 seconds.
## Total execution time: 5.8 seconds.
h1_simple_formants <- update(h1_simple, newdata = vcs, formula = . ~ . - pf + f1 + f2 + f3 + f4, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 1 finished in 5.6 seconds.
## Chain 3 finished in 5.9 seconds.
## Chain 2 finished in 6.3 seconds.
## Chain 4 finished in 6.7 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 6.1 seconds.
## Total execution time: 7.0 seconds.
list(`Preregistered` = h1_simple,
     `Standardized within` = h1_simple_within,
     `No outliers` = h1_simple_nooutlier,
     `No vowels` = h1_simple_novowels) %>% 
  map(~ broom.mixed::tidy(., conf.int = T)) %>% 
  bind_rows(.id = "Specification") %>% 
  filter(!term %in% c("(Intercept)"),
         !term %in% c("sd__(Intercept)"),
         !term %in% c("sd__Observation")
         ) %>% 
  ggplot(aes(x = Specification, y = estimate, ymin = conf.low, ymax = conf.high)) + 
  geom_pointrange() +
  ggrepel::geom_text_repel(aes(label = sprintf("%.2f [%.2f;%.2f]", estimate, conf.low,  conf.high )), nudge_x = 0.15, size = 3) +
  facet_wrap(~ term) +
  coord_flip()

list(`Preregistered` = h1_simple,
     `Single formants` = h1_simple_formants) %>% 
  map(~ broom.mixed::tidy(., conf.int = T)) %>% 
  bind_rows(.id = "Specification") %>% 
  filter(term %in% c("pf", "f1", "f2", "f3", "f4")) %>% 
  ggplot(aes(x = term, y = estimate, ymin = conf.low, ymax = conf.high, color = Specification)) + 
  geom_pointrange() +
  ggrepel::geom_text_repel(aes(label = sprintf("%.2f [%.2f;%.2f]", estimate, conf.low,  conf.high )), nudge_x = 0.15, size = 3) +
  coord_flip()

Model details
summary(h1_simple)
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: agree ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs (Number of observations: 1434) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 7) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.37      0.15     0.19     0.76 1.00     2125     3434
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept     0.09      0.21    -0.31     0.49 1.00     3092     3611
## f0            0.02      0.08    -0.13     0.17 1.00     5513     5486
## pf            0.03      0.05    -0.07     0.13 1.00     5878     5807
## sex1         -0.00      0.09    -0.18     0.18 1.00     4455     4461
## age          -0.06      0.06    -0.17     0.06 1.00     6591     5131
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.96      0.02     0.92     0.99 1.00     7894     5152
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_within)
## Warning: There were 13 divergent transitions after warmup. Increasing
## adapt_delta above may help. See http://mc-stan.org/misc/warnings.html#divergent-
## transitions-after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: agree ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs_within (Number of observations: 1434) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 7) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.37      0.15     0.18     0.76 1.00     1966     2144
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept     0.09      0.20    -0.29     0.50 1.00     3210     3959
## f0            0.01      0.07    -0.13     0.15 1.00     6157     5206
## pf            0.02      0.06    -0.09     0.13 1.00     6769     5218
## sex1         -0.03      0.09    -0.20     0.14 1.00     5212     4940
## age          -0.06      0.06    -0.17     0.05 1.00     6610     5628
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.96      0.02     0.92     0.99 1.00     9250     4800
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_nooutlier)
## Warning: There were 3 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: agree ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs_nooutlier (Number of observations: 1431) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 7) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.37      0.15     0.18     0.76 1.00     2080     3185
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept     0.10      0.21    -0.30     0.52 1.00     3104     4141
## f0            0.02      0.08    -0.12     0.17 1.00     5899     5579
## pf            0.03      0.05    -0.08     0.14 1.00     6755     5351
## sex1         -0.00      0.09    -0.19     0.18 1.00     5028     5234
## age          -0.06      0.06    -0.17     0.05 1.00     7832     5484
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.96      0.02     0.92     0.99 1.00     8379     5865
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_novowels)
## Warning: There were 14 divergent transitions after warmup. Increasing
## adapt_delta above may help. See http://mc-stan.org/misc/warnings.html#divergent-
## transitions-after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: agree ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs_novowels (Number of observations: 1346) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 6) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.42      0.19     0.20     0.92 1.00     1915     1405
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept     0.10      0.24    -0.36     0.57 1.00     1926     1463
## f0           -0.03      0.08    -0.18     0.12 1.00     5918     5873
## pf            0.07      0.06    -0.04     0.18 1.00     6312     5368
## sex1         -0.02      0.09    -0.21     0.16 1.00     4926     4747
## age          -0.06      0.06    -0.17     0.05 1.00     6435     1826
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.95      0.02     0.92     0.99 1.00     8062     5468
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_formants)
## Warning: There were 6 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: agree ~ f0 + sex + age + (1 | dataset) + f1 + f2 + f3 + f4 
##    Data: vcs (Number of observations: 1434) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 7) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.39      0.17     0.19     0.82 1.00     1622     1400
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept     0.11      0.22    -0.31     0.54 1.00     2208     2000
## f0            0.02      0.08    -0.13     0.16 1.00     6528     5849
## sex1         -0.01      0.10    -0.20     0.18 1.00     5906     5583
## age          -0.06      0.06    -0.17     0.05 1.00     8600     5093
## f1            0.03      0.04    -0.04     0.10 1.00     8275     5862
## f2           -0.05      0.05    -0.15     0.05 1.00     6412     3006
## f3            0.14      0.07     0.01     0.27 1.00     7127     5922
## f4           -0.08      0.07    -0.22     0.06 1.00     6485     4651
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.96      0.02     0.92     0.99 1.00     8752     4731
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).

Check Hypothesis 4: SOI-R behavior

Participants with lower voice pitch will report having a more unrestricted sociosexual behavior.

Interpretation: Little difference across dataset specifications (whether standardized globally, within dataset, whether outliers or vowel-based data were omitted). No clear effect of individual formants (f1-f4).

Models

h1_simple <- brm(behavior ~ f0 + pf + sex + age + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, save_mevars = TRUE, 
          file = "models/behavior/h1_simple")


h1_simple_within <- update(h1_simple, newdata = vcs_within, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 2 finished in 6.8 seconds.
## Chain 3 finished in 7.2 seconds.
## Chain 4 finished in 7.8 seconds.
## Chain 1 finished in 8.2 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 7.5 seconds.
## Total execution time: 8.6 seconds.
h1_simple_nooutlier <- update(h1_simple, newdata = vcs_nooutlier, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 4 finished in 6.8 seconds.
## Chain 1 finished in 7.2 seconds.
## Chain 2 finished in 7.3 seconds.
## Chain 3 finished in 7.8 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 7.3 seconds.
## Total execution time: 8.2 seconds.
h1_simple_novowels <- update(h1_simple, newdata = vcs_novowels, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 3 finished in 6.4 seconds.
## Chain 4 finished in 6.8 seconds.
## Chain 1 finished in 7.1 seconds.
## Chain 2 finished in 7.1 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 6.9 seconds.
## Total execution time: 7.4 seconds.
h1_simple_formants <- update(h1_simple, newdata = vcs, formula = . ~ . - pf + f1 + f2 + f3 + f4, recompile = TRUE, silent = 2, refresh = 0)
## Warning: Rows containing NAs were excluded from the model.
## Running MCMC with 4 chains, at most 8 in parallel...
## 
## Chain 2 finished in 8.3 seconds.
## Chain 1 finished in 8.6 seconds.
## Chain 4 finished in 8.6 seconds.
## Chain 3 finished in 8.9 seconds.
## 
## All 4 chains finished successfully.
## Mean chain execution time: 8.6 seconds.
## Total execution time: 9.2 seconds.
list(`Preregistered` = h1_simple,
     `Standardized within` = h1_simple_within,
     `No outliers` = h1_simple_nooutlier,
     `No vowels` = h1_simple_novowels) %>% 
  map(~ broom.mixed::tidy(., conf.int = T)) %>% 
  bind_rows(.id = "Specification") %>% 
  filter(!term %in% c("(Intercept)"),
         !term %in% c("sd__(Intercept)"),
         !term %in% c("sd__Observation")
         ) %>% 
  ggplot(aes(x = Specification, y = estimate, ymin = conf.low, ymax = conf.high)) + 
  geom_pointrange() +
  ggrepel::geom_text_repel(aes(label = sprintf("%.2f [%.2f;%.2f]", estimate, conf.low,  conf.high )), nudge_x = 0.15, size = 3) +
  facet_wrap(~ term) +
  coord_flip()

list(`Preregistered` = h1_simple,
     `Single formants` = h1_simple_formants) %>% 
  map(~ broom.mixed::tidy(., conf.int = T)) %>% 
  bind_rows(.id = "Specification") %>% 
  filter(term %in% c("pf", "f1", "f2", "f3", "f4")) %>% 
  ggplot(aes(x = term, y = estimate, ymin = conf.low, ymax = conf.high, color = Specification)) + 
  geom_pointrange() +
  ggrepel::geom_text_repel(aes(label = sprintf("%.2f [%.2f;%.2f]", estimate, conf.low,  conf.high )), nudge_x = 0.15, size = 3) +
  coord_flip()

Model details
summary(h1_simple)
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: behavior ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs (Number of observations: 1996) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 9) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.41      0.14     0.23     0.75 1.00     1925     3771
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.85      0.18    -1.20    -0.50 1.00     2520     4240
## f0           -0.21      0.06    -0.33    -0.09 1.00     5719     5077
## pf           -0.02      0.04    -0.10     0.07 1.00     6518     5000
## sex1         -0.24      0.07    -0.38    -0.09 1.00     4768     5122
## age           0.32      0.05     0.23     0.41 1.00     6975     5146
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.91      0.01     0.89     0.94 1.00     7722     4831
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_within)
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: behavior ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs_within (Number of observations: 1996) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 9) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.43      0.14     0.24     0.79 1.00     2025     3178
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.83      0.19    -1.19    -0.47 1.00     2562     3541
## f0           -0.19      0.06    -0.30    -0.08 1.00     6108     5186
## pf           -0.01      0.05    -0.11     0.08 1.00     6547     5647
## sex1         -0.21      0.07    -0.35    -0.07 1.00     5173     4373
## age           0.32      0.05     0.23     0.41 1.00     6767     5288
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.91      0.01     0.89     0.94 1.00     7506     6005
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_nooutlier)
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: behavior ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs_nooutlier (Number of observations: 1994) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 9) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.41      0.14     0.23     0.75 1.00     1952     3174
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.85      0.18    -1.20    -0.49 1.00     2668     3884
## f0           -0.21      0.06    -0.32    -0.09 1.00     5984     5314
## pf           -0.01      0.04    -0.10     0.07 1.00     6619     5260
## sex1         -0.23      0.07    -0.37    -0.08 1.00     5046     5147
## age           0.32      0.05     0.23     0.41 1.00     7687     5318
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.91      0.01     0.88     0.94 1.00     7780     5082
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_novowels)
## Warning: There were 1 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: behavior ~ f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs_novowels (Number of observations: 1657) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 8) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.44      0.15     0.24     0.81 1.00     2195     3572
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.81      0.21    -1.22    -0.41 1.00     2908     3654
## f0           -0.20      0.07    -0.34    -0.07 1.00     6303     5262
## pf            0.01      0.05    -0.09     0.11 1.00     6646     5218
## sex1         -0.20      0.08    -0.37    -0.04 1.00     5465     4857
## age           0.31      0.05     0.21     0.40 1.00     7028     4620
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.91      0.02     0.88     0.94 1.00     7803     5165
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
summary(h1_simple_formants)
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: behavior ~ f0 + sex + age + (1 | dataset) + f1 + f2 + f3 + f4 
##    Data: vcs (Number of observations: 1996) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 9) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.43      0.14     0.24     0.79 1.00     2177     3545
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.85      0.18    -1.22    -0.49 1.00     2454     4095
## f0           -0.21      0.06    -0.33    -0.09 1.00     7014     5733
## sex1         -0.27      0.08    -0.42    -0.12 1.00     6085     5349
## age           0.32      0.05     0.23     0.41 1.00     9046     6093
## f1            0.04      0.03    -0.02     0.10 1.00     9594     6080
## f2            0.00      0.03    -0.06     0.06 1.00     8704     5803
## f3           -0.02      0.05    -0.12     0.08 1.00     7749     5891
## f4           -0.05      0.05    -0.16     0.05 1.00     7522     5784
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.91      0.01     0.88     0.94 1.00    11770     5242
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).

Extraversion, adjusted for dominance

extra_adj_for_dominance <- brm(extra ~ dominance + f0 + pf + sex + me(age, age_se) + (1 | dataset), data = vcs,
          iter = iter + 1500, warmup = warmup + 1500, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/extra/extra_adj_for_dominance2")
## Warning: Rows containing NAs were excluded from the model.
## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
extra_adj_for_dominance
## Warning: Parts of the model have not converged (some Rhats are > 1.05). Be
## careful when analysing the results! We recommend running more iterations and/or
## setting stronger priors.
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: extra ~ dominance + f0 + pf + sex + me(age, age_se) + (1 | dataset) 
##    Data: vcs (Number of observations: 970) 
## Samples: 4 chains, each with iter = 5500; warmup = 3500; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 4) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.25      0.26     0.03     0.92 1.00     1649     2050
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept       0.29      0.21    -0.09     0.71 1.00     2755     3113
## dominance       0.49      0.03     0.44     0.54 1.00     8796     5920
## f0             -0.07      0.08    -0.23     0.08 1.00     5260     5393
## pf              0.13      0.05     0.02     0.24 1.00     5626     5912
## sex1           -0.08      0.09    -0.26     0.11 1.00     4407     4801
## meageage_se    -0.10      0.05    -0.20     0.00 1.00     4867     5170
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.79      0.02     0.76     0.83 1.00     9001     5842
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).

Dominance, adjusted for extraversion

dominance_adj_for_extra <- brm(dominance ~ extra  + f0 + pf + sex + age + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/dominance/dominance_adj_for_extra")
## Warning: Rows containing NAs were excluded from the model.
## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
dominance_adj_for_extra
## Warning: There were 4 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: dominance ~ extra + f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs (Number of observations: 970) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 4) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.49      0.37     0.16     1.51 1.00     1949     2701
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.22      0.32    -0.87     0.39 1.00     3299     3365
## extra         0.54      0.03     0.48     0.60 1.00     8459     6010
## f0           -0.14      0.08    -0.30     0.02 1.00     5696     5429
## pf           -0.08      0.06    -0.19     0.03 1.00     6699     5181
## sex1         -0.17      0.10    -0.35     0.02 1.00     4852     4716
## age           0.09      0.05    -0.02     0.19 1.00     7039     5434
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.83      0.02     0.79     0.87 1.00     9052     5588
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).

SOI-R Behavior adj. for extraversion

behavior_adj_for_extra <- brm(behavior ~ extra  + f0 + pf + sex + age + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/behavior/behavior_adj_for_extra")
## Warning: Rows containing NAs were excluded from the model.
## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
behavior_adj_for_extra
## Warning: There were 1 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: behavior ~ extra + f0 + pf + sex + age + (1 | dataset) 
##    Data: vcs (Number of observations: 1236) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 5) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.48      0.28     0.20     1.22 1.00     1976     2101
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.91      0.28    -1.47    -0.37 1.00     2894     3255
## extra         0.23      0.03     0.18     0.29 1.00     9045     5931
## f0           -0.15      0.08    -0.31     0.01 1.00     5483     5249
## pf           -0.04      0.06    -0.15     0.07 1.00     7390     5614
## sex1         -0.18      0.10    -0.37     0.01 1.00     5136     5211
## age           0.34      0.06     0.23     0.45 1.00     8327     5965
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.93      0.02     0.89     0.96 1.00     8979     4936
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).

Extraversion, separate by sex

h1_men <- brm(extra ~ f0 + pf + me(age, age_se) + (1 | dataset), data = vcs %>% filter(sex == "male"),
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/extra/h1_men")
## Warning: Rows containing NAs were excluded from the model.
## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_women <- brm(extra ~ f0 + pf + me(age, age_se) + (1 | dataset), data = vcs %>% filter(sex != "male"),
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/extra/h1_women")
## Warning: Rows containing NAs were excluded from the model.

## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_f0bysex <- brm(extra ~ f0*sex + me(age, age_se) + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/extra/h1_f0bysex")
## Warning: Rows containing NAs were excluded from the model.

## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_men
## Warning: Parts of the model have not converged (some Rhats are > 1.05). Be
## careful when analysing the results! We recommend running more iterations and/or
## setting stronger priors.
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: extra ~ f0 + pf + me(age, age_se) + (1 | dataset) 
##    Data: vcs %>% filter(sex == "male") (Number of observations: 617) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 5) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.33      0.26     0.05     0.99 1.00     1533     1799
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept      -0.09      0.32    -0.71     0.56 1.00     3667     4132
## f0             -0.21      0.13    -0.47     0.06 1.00     8527     6150
## pf              0.06      0.09    -0.11     0.24 1.00     7574     5932
## meageage_se    -0.09      0.08    -0.25     0.07 1.00     4739     5047
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     1.00      0.03     0.94     1.06 1.00    10115     5306
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
h1_women
## Warning: Parts of the model have not converged (some Rhats are > 1.05). Be
## careful when analysing the results! We recommend running more iterations and/or
## setting stronger priors.
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: extra ~ f0 + pf + me(age, age_se) + (1 | dataset) 
##    Data: vcs %>% filter(sex != "male") (Number of observations: 816) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 5) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.50      0.31     0.19     1.33 1.00     2038     3102
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept       0.41      0.34    -0.27     1.06 1.00     2843     3355
## f0             -0.24      0.10    -0.43    -0.05 1.00    10974     5540
## pf              0.10      0.07    -0.03     0.23 1.00    10580     5563
## meageage_se    -0.11      0.08    -0.26     0.05 1.00     6457     5693
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.96      0.02     0.91     1.01 1.00    10529     5958
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
equivalence_test(h1_f0bysex, ci = 0.89)
## # Test for Practical Equivalence
## 
##   ROPE: [-0.10 0.10]
## 
## Parameter   |        H0 | inside ROPE |       89% HDI
## -----------------------------------------------------
## Intercept   | Undecided |     25.73 % | [-0.15  0.56]
## f0          | Undecided |      2.06 % | [-0.34 -0.09]
## sex1        |  Rejected |      0.00 % | [-0.48 -0.20]
## f0.sex1     | Undecided |     87.57 % | [-0.10  0.15]
## meageage_se | Undecided |     44.50 % | [-0.20 -0.01]

Agreeableness, separate by sex

h1_men <- brm(agree ~ f0 + pf + me(age, age_se) + (1 | dataset), data = vcs %>% filter(sex == "male"),
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/agree/h1_men") %>% 
  add_criterion("loo") %>% 
  add_criterion("bayes_R2") %>% 
  add_criterion("loo_R2") 
## Warning: Rows containing NAs were excluded from the model.
## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_women <- brm(agree ~ f0 + pf + me(age, age_se) + (1 | dataset), data = vcs %>% filter(sex != "male"),
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/agree/h1_women") %>% 
  add_criterion("loo") %>% 
  add_criterion("bayes_R2") %>% 
  add_criterion("loo_R2") 
## Warning: Rows containing NAs were excluded from the model.

## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_f0bysex <- brm(agree ~ f0*sex + me(age, age_se) + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/agree/h1_f0bysex")
## Warning: Rows containing NAs were excluded from the model.

## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_men
## Warning: Parts of the model have not converged (some Rhats are > 1.05). Be
## careful when analysing the results! We recommend running more iterations and/or
## setting stronger priors.
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: agree ~ f0 + pf + me(age, age_se) + (1 | dataset) 
##    Data: vcs %>% filter(sex == "male") (Number of observations: 617) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 5) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.36      0.22     0.12     0.94 1.00     2109     3721
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept       0.10      0.31    -0.51     0.72 1.00     3097     4470
## f0              0.23      0.12    -0.02     0.48 1.00     8401     5757
## pf             -0.03      0.09    -0.20     0.14 1.00     7243     6177
## meageage_se    -0.01      0.08    -0.17     0.15 1.00     4621     5388
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.94      0.03     0.89     1.00 1.00     8765     5539
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
h1_women
## Warning: Parts of the model have not converged (some Rhats are > 1.05). Be
## careful when analysing the results! We recommend running more iterations and/or
## setting stronger priors.
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: agree ~ f0 + pf + me(age, age_se) + (1 | dataset) 
##    Data: vcs %>% filter(sex != "male") (Number of observations: 817) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 5) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.63      0.38     0.26     1.55 1.00     2037     2915
## 
## Population-Level Effects: 
##             Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept       0.31      0.41    -0.51     1.09 1.00     2130     2641
## f0             -0.10      0.10    -0.29     0.09 1.00     7677     6441
## pf              0.04      0.07    -0.08     0.17 1.00     8024     5535
## meageage_se    -0.11      0.08    -0.27     0.06 1.00     5958     5828
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.96      0.02     0.92     1.01 1.00     9136     6149
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
equivalence_test(h1_f0bysex, ci = 0.89)
## # Test for Practical Equivalence
## 
##   ROPE: [-0.10 0.10]
## 
## Parameter   |        H0 | inside ROPE |      89% HDI
## ----------------------------------------------------
## Intercept   | Undecided |     12.09 % | [-0.06 0.67]
## f0          | Undecided |     55.65 % | [-0.04 0.21]
## sex1        | Undecided |     66.66 % | [-0.07 0.21]
## f0.sex1     | Undecided |      1.98 % | [ 0.09 0.33]
## meageage_se | Undecided |     70.07 % | [-0.16 0.02]

Dominance, separate by sex

h1_men <- brm(dominance ~ f0 + pf + age + (1 | dataset), data = vcs %>% filter(sex == "male"),
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/dominance/h1_men")
## Warning: Rows containing NAs were excluded from the model.
## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_women <- brm(dominance ~ f0 + pf + age + (1 | dataset), data = vcs %>% filter(sex != "male"),
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/dominance/h1_women")
## Warning: Rows containing NAs were excluded from the model.

## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_f0bysex <- brm(dominance ~ f0*sex + age + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", 
          file = "models/dominance/h1_f0bysex")
## Warning: Rows containing NAs were excluded from the model.
h1_men
## Warning: There were 3 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: dominance ~ f0 + pf + age + (1 | dataset) 
##    Data: vcs %>% filter(sex == "male") (Number of observations: 494) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 3) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.82      0.71     0.18     2.73 1.00     2085     3522
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.35      0.62    -1.68     0.86 1.00     2549     2263
## f0           -0.26      0.16    -0.57     0.04 1.00     6563     5146
## pf            0.09      0.13    -0.17     0.35 1.00     5761     5688
## age           0.04      0.09    -0.13     0.21 1.00     6290     4832
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.98      0.03     0.92     1.04 1.00     7660     5600
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
h1_women
## Warning: There were 2 divergent transitions after warmup. Increasing adapt_delta
## above may help. See http://mc-stan.org/misc/warnings.html#divergent-transitions-
## after-warmup
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: dominance ~ f0 + pf + age + (1 | dataset) 
##    Data: vcs %>% filter(sex != "male") (Number of observations: 491) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 3) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.70      0.65     0.13     2.60 1.00     1703     1889
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept     0.22      0.63    -1.02     1.34 1.00     2231     2138
## f0           -0.29      0.12    -0.53    -0.05 1.00     6646     4832
## pf           -0.04      0.08    -0.19     0.10 1.00     5961     5006
## age           0.04      0.09    -0.15     0.22 1.00     6006     5404
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.97      0.03     0.91     1.03 1.00     6867     5480
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
equivalence_test(h1_f0bysex, ci = 0.89)
## # Test for Practical Equivalence
## 
##   ROPE: [-0.10 0.10]
## 
## Parameter |        H0 | inside ROPE |       89% HDI
## ---------------------------------------------------
## Intercept | Undecided |     27.76 % | [-0.57  0.51]
## f0        |  Rejected |      0.00 % | [-0.42 -0.11]
## sex1      |  Rejected |      0.00 % | [-0.45 -0.11]
## age       | Undecided |     87.75 % | [-0.06  0.14]
## f0.sex1   | Undecided |     76.63 % | [-0.13  0.18]

SOI-R behavior, separate by sex

h1_men <- brm(behavior ~ f0 + pf + age + (1 | dataset), data = vcs %>% filter(sex == "male"),
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/behavior/h1_men") %>% 
  add_criterion("loo") %>% 
  add_criterion("bayes_R2") %>% 
  add_criterion("loo_R2") 
## Warning: Rows containing NAs were excluded from the model.
## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_women <- brm(behavior ~ f0 + pf + age + (1 | dataset), data = vcs %>% filter(sex != "male"),
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", save_mevars = TRUE, 
          file = "models/behavior/h1_women") %>% 
  add_criterion("loo") %>% 
  add_criterion("bayes_R2") %>% 
  add_criterion("loo_R2") 
## Warning: Rows containing NAs were excluded from the model.

## Warning: Argument 'save_mevars' is deprecated. Please use argument 'latent' in
## function 'save_pars()' instead.
h1_f0bysex <- brm(behavior ~ f0*sex + age + (1 | dataset), data = vcs,
          iter = iter, warmup = warmup, chains = chains, cores = chains,
          prior = priors,
          control = control, file_refit = "on_change", 
          file = "models/behavior/h1_f0bysex")
## Warning: Rows containing NAs were excluded from the model.
h1_men
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: behavior ~ f0 + pf + age + (1 | dataset) 
##    Data: vcs %>% filter(sex == "male") (Number of observations: 790) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 6) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.49      0.25     0.22     1.12 1.00     1819     3212
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.95      0.32    -1.57    -0.32 1.00     3843     3412
## f0           -0.29      0.12    -0.52    -0.07 1.00     7162     5398
## pf            0.03      0.11    -0.18     0.24 1.00     6331     5105
## age           0.25      0.07     0.12     0.39 1.00     6140     5067
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.95      0.02     0.91     1.00 1.00     7084     5565
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
h1_women
##  Family: gaussian 
##   Links: mu = identity; sigma = identity 
## Formula: behavior ~ f0 + pf + age + (1 | dataset) 
##    Data: vcs %>% filter(sex != "male") (Number of observations: 1206) 
## Samples: 4 chains, each with iter = 4000; warmup = 2000; thin = 1;
##          total post-warmup samples = 8000
## 
## Group-Level Effects: 
## ~dataset (Number of levels: 6) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.47      0.22     0.22     1.05 1.00     1777     2842
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept    -0.95      0.27    -1.48    -0.41 1.00     3170     3625
## f0           -0.16      0.07    -0.30    -0.03 1.00     7384     5290
## pf           -0.03      0.05    -0.12     0.06 1.00     7324     5509
## age           0.42      0.07     0.28     0.54 1.00     6460     5647
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.89      0.02     0.85     0.92 1.00     7182     5552
## 
## Samples were drawn using sample(hmc). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
equivalence_test(h1_f0bysex, ci = 0.89)
## # Test for Practical Equivalence
## 
##   ROPE: [-0.10 0.10]
## 
## Parameter |        H0 | inside ROPE |       89% HDI
## ---------------------------------------------------
## Intercept |  Rejected |      0.00 % | [-1.22 -0.60]
## f0        |  Rejected |      0.00 % | [-0.34 -0.13]
## sex1      |  Rejected |      0.00 % | [-0.37 -0.13]
## age       |  Rejected |      0.00 % | [ 0.25  0.40]
## f0.sex1   | Undecided |     82.66 % | [-0.15  0.05]