This script is the main analysis for the of the Onset-Neighbourhood Density Analyses, with trial level proportions used as a control variable.

require(knitr)
## Loading required package: knitr
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.0 ──
## ✓ ggplot2 3.3.2     ✓ purrr   0.3.4
## ✓ tibble  3.0.4     ✓ dplyr   1.0.2
## ✓ tidyr   1.1.2     ✓ stringr 1.4.0
## ✓ readr   1.3.1     ✓ forcats 0.5.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(brms)
## Loading required package: Rcpp
## Loading 'brms' package (version 2.13.5). Useful instructions
## can be found by typing help('brms'). A more detailed introduction
## to the package is available through vignette('brms_overview').
## 
## Attaching package: 'brms'
## The following object is masked from 'package:stats':
## 
##     ar
library(lme4)
## Loading required package: Matrix
## 
## Attaching package: 'Matrix'
## The following objects are masked from 'package:tidyr':
## 
##     expand, pack, unpack
## 
## Attaching package: 'lme4'
## The following object is masked from 'package:brms':
## 
##     ngrps
library(mcmcplots)
## Loading required package: coda
library(tidybayes)
## 
## Attaching package: 'tidybayes'
## The following objects are masked from 'package:brms':
## 
##     dstudent_t, pstudent_t, qstudent_t, rstudent_t
library(ggthemes)
theme_set(theme_minimal())

Open eye-tracking data: There are three separate datasets – one for RTs, one for Proportions and one for pre-onset proportion of looks to target.

LT_30mo <- read_csv("Data_Processing/LT_30mo.csv") 
## Warning: Missing column names filled in: 'X1' [1]
## Parsed with column specification:
## cols(
##   .default = col_double(),
##   Target = col_character(),
##   ParticipantName = col_character(),
##   MediaName = col_character(),
##   AOI = col_character(),
##   Blind_ID = col_character()
## )
## See spec(...) for full column specifications.
nrow(data.frame(unique(LT_30mo $ParticipantName))) 
## [1] 100
RT_30mo  <- read_csv("Data_Processing/RT_30mo.csv") 
## Warning: Missing column names filled in: 'X1' [1]
## Parsed with column specification:
## cols(
##   .default = col_double(),
##   Target = col_character(),
##   ParticipantName = col_character(),
##   MediaName = col_character(),
##   FirstAOI = col_character(),
##   Blind_ID = col_character(),
##   TargetSide = col_character()
## )
## See spec(...) for full column specifications.
nrow(data.frame(unique(RT_30mo $ParticipantName))) 
## [1] 100
Prior_looks <- read_csv("Data_Processing/Prior_looks.csv")
## Warning: Missing column names filled in: 'X1' [1]
## Parsed with column specification:
## cols(
##   .default = col_double(),
##   Target = col_character(),
##   ParticipantName = col_character(),
##   MediaName = col_character(),
##   AOI = col_character(),
##   Blind_ID = col_character()
## )
## See spec(...) for full column specifications.
LT_30mo %>%
  group_by(Target) %>%
  summarise(
    Freq = mean(COCA_Freq_2)
  )
## `summarise()` ungrouping output (override with `.groups` argument)

Get average looks to target in pre-onset window, for each word averaged across participants, and participant-specific averages.

Prop_by_target <- Prior_looks %>%
                    group_by(Target) %>%
                    dplyr::summarize(
                    TargetProp = mean(Prop)
                    )
## `summarise()` ungrouping output (override with `.groups` argument)
Prior_looks_short <- Prior_looks %>%
  rename("Pre_Onset_Prop" = "Prop")  %>%
  select(Pre_Onset_Prop, ParticipantName, MediaName)


RT_30mo <- merge(RT_30mo, Prop_by_target, by="Target")
RT_30mo <- merge(RT_30mo, Prior_looks_short, by=c("ParticipantName", "MediaName"))

LT_30mo <- merge(LT_30mo, Prop_by_target, by="Target")
LT_30mo <- merge(LT_30mo, Prior_looks_short, by=c("ParticipantName", "MediaName"))

Median Split for Subgroup Analyses

RT_30mo$VocabSplit <- ifelse(RT_30mo$VocabTotal < 544, yes=0, no =1)
RT_30mo$VocabSplit <- factor(RT_30mo$VocabSplit, labels = c("low", "high"))
LT_30mo$VocabSplit <- ifelse(LT_30mo$VocabTotal < 544, yes=0, no =1)
LT_30mo$VocabSplit <- factor(LT_30mo$VocabSplit,labels = c("low", "high"))

First, analyse looks to target in pre onset window

Prior_looks %>%
  group_by(Target) %>%
  summarise(
    Prop_mean = mean(Prop, na.rm=TRUE), 
    Prop_sd = sd(Prop, na.rm=TRUE),
  )
## `summarise()` ungrouping output (override with `.groups` argument)

Transform proportions to remove 0s and 1s for beta distribution. Divide variables by 100 (otherwise regression coefficients are all .00)

Prior_looks$Prop2 <- ((Prior_looks$Prop)*(Prior_looks$SamplesTotal-1) + 1/2)/Prior_looks$SamplesTotal
Prior_looks <- mutate(Prior_looks, 
Vocab.c100 = (Vocab.c - median(Vocab.c))/100,
Median_Initial.c100 = Median_Initial.c/100,
AoA.c100 = (Percent_75_Amer - mean(Percent_75_Amer))/100,
logfreq.c100 = logfreq.c/100,
TrialNumber.100 = TrialNumber/100) 

Beta Regression predicting average proportion of looks to target in the pre-onset window

mpo <- brm(Prop2 ~ 1 + (1 |ParticipantName) + (1 | Target),  family=Beta("logit", "log"), 
           data=Prior_looks, 
           chains=4, 
           iter=5000, 
           cores=8, 
           file="mpo", 
           save_all_pars=TRUE)
summary(mpo)
##  Family: beta 
##   Links: mu = logit; phi = identity 
## Formula: Prop2 ~ 1 + (1 | ParticipantName) + (1 | Target) 
##    Data: Prior_looks (Number of observations: 3534) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 100) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.13      0.02     0.08     0.17 1.00     3728     3234
## 
## ~Target (Number of levels: 18) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.44      0.09     0.31     0.65 1.00     2090     3789
## 
## Population-Level Effects: 
##           Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept     0.29      0.11     0.08     0.51 1.00     1300     2283
## 
## Family Specific Parameters: 
##     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## phi     3.61      0.08     3.46     3.77 1.00    13695     7202
## 
## Samples were drawn using sampling(NUTS). 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).

See if proportion of looks pre onset is predicted by substantive or methodological variables.

mpo_baseline <- brm(Prop2 ~ Median_Initial.c100 + Vocab.c100 + AoA.c100 + First_Instance + TrialNumber.100 + logfreq.c100 + 
                      (1 + Median_Initial.c100  + AoA.c100 + First_Instance + TrialNumber.100 + logfreq.c100  || ParticipantName) + 
                      (1 + First_Instance + Vocab.c100 + TrialNumber.100  || Target), 
                    family=Beta("logit", "log"),
                    data=Prior_looks,
                    chains=4, 
                    iter=5000,  
                    cores=8, 
                    file="mpo_baseline",
                    save_all_pars=TRUE)
summary(mpo_baseline)
##  Family: beta 
##   Links: mu = logit; phi = identity 
## Formula: Prop2 ~ Median_Initial.c100 + Vocab.c100 + AoA.c100 + First_Instance + TrialNumber.100 + logfreq.c100 + (1 + Median_Initial.c100 + AoA.c100 + First_Instance + TrialNumber.100 + logfreq.c100 || ParticipantName) + (1 + First_Instance + Vocab.c100 + TrialNumber.100 || Target) 
##    Data: Prior_looks (Number of observations: 3534) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 100) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.04      0.03     0.00     0.10 1.00     2248
## sd(Median_Initial.c100)     0.28      0.20     0.01     0.73 1.00     4140
## sd(AoA.c100)                2.42      1.03     0.24     4.25 1.00     2308
## sd(First_Instance)          0.08      0.04     0.01     0.17 1.00     2324
## sd(TrialNumber.100)         0.78      0.11     0.56     1.00 1.00     4416
## sd(logfreq.c100)           10.53      3.49     1.88    16.47 1.00     1954
##                         Tail_ESS
## sd(Intercept)               4453
## sd(Median_Initial.c100)     4888
## sd(AoA.c100)                2725
## sd(First_Instance)          3533
## sd(TrialNumber.100)         6259
## sd(logfreq.c100)            1678
## 
## ~Target (Number of levels: 18) 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)           0.42      0.11     0.26     0.67 1.00     4507     5033
## sd(First_Instance)      0.10      0.06     0.01     0.22 1.00     2973     4675
## sd(Vocab.c100)          0.08      0.03     0.04     0.14 1.00     3544     3621
## sd(TrialNumber.100)     0.82      0.29     0.29     1.46 1.00     3710     3517
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept               0.30      0.12     0.06     0.55 1.00     5475     5592
## Median_Initial.c100    -0.21      1.12    -2.38     2.03 1.00     5644     5490
## Vocab.c100              0.00      0.03    -0.05     0.06 1.00     8401     7562
## AoA.c100                0.63      3.93    -7.07     8.52 1.00     6130     5969
## First_Instance         -0.09      0.05    -0.20     0.02 1.00    13842     7965
## TrialNumber.100         0.21      0.31    -0.40     0.84 1.00     8751     7324
## logfreq.c100           -1.19     14.07   -29.34    26.62 1.00     4950     5050
## 
## Family Specific Parameters: 
##     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## phi     3.83      0.09     3.66     4.01 1.00    10210     7399
## 
## Samples were drawn using sampling(NUTS). 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).
marginal_effects(mpo_baseline, "First_Instance")
## Warning: Method 'marginal_effects' is deprecated. Please use
## 'conditional_effects' instead.

mpo_1<- brm(Prop2 ~ Median_Initial.c100*Vocab.c100 + AoA.c100 + First_Instance + TrialNumber.100 + logfreq.c100 +
              (1 + Median_Initial.c100 + AoA.c100 + First_Instance + TrialNumber.100 + logfreq.c100 || ParticipantName) + 
              (1 + First_Instance + Vocab.c100 + TrialNumber.100 || Target), 
            family=Beta("logit", "log"), prior=prior(student_t(3,0,2), class=sd), 
            data=Prior_looks, chains=4, iter=5000, 
            file="mpo_1",
            cores=8, save_all_pars=TRUE)
summary(mpo_1)
##  Family: beta 
##   Links: mu = logit; phi = identity 
## Formula: Prop2 ~ Median_Initial.c100 * Vocab.c100 + AoA.c100 + First_Instance + TrialNumber.100 + logfreq.c100 + (1 + Median_Initial.c100 + AoA.c100 + First_Instance + TrialNumber.100 + logfreq.c100 || ParticipantName) + (1 + First_Instance + Vocab.c100 + TrialNumber.100 || Target) 
##    Data: Prior_looks (Number of observations: 3534) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 100) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.04      0.03     0.00     0.10 1.00     2367
## sd(Median_Initial.c100)     0.28      0.20     0.01     0.73 1.00     4810
## sd(AoA.c100)                2.28      1.03     0.21     4.18 1.00     2334
## sd(First_Instance)          0.09      0.04     0.01     0.17 1.00     2385
## sd(TrialNumber.100)         0.77      0.12     0.55     1.01 1.00     3674
## sd(logfreq.c100)           10.18      3.93     0.89    16.57 1.00     1530
##                         Tail_ESS
## sd(Intercept)               3568
## sd(Median_Initial.c100)     5194
## sd(AoA.c100)                2986
## sd(First_Instance)          4196
## sd(TrialNumber.100)         5044
## sd(logfreq.c100)            1715
## 
## ~Target (Number of levels: 18) 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)           0.42      0.11     0.26     0.67 1.00     5182     5967
## sd(First_Instance)      0.10      0.06     0.01     0.22 1.00     2968     5551
## sd(Vocab.c100)          0.08      0.03     0.04     0.14 1.00     3804     5094
## sd(TrialNumber.100)     0.81      0.29     0.28     1.42 1.00     4276     4148
## 
## Population-Level Effects: 
##                                Estimate Est.Error l-95% CI u-95% CI Rhat
## Intercept                          0.30      0.12     0.06     0.55 1.00
## Median_Initial.c100               -0.20      1.08    -2.35     1.93 1.00
## Vocab.c100                         0.00      0.03    -0.05     0.06 1.00
## AoA.c100                           0.69      3.84    -6.95     8.21 1.00
## First_Instance                    -0.09      0.05    -0.19     0.02 1.00
## TrialNumber.100                    0.21      0.31    -0.40     0.84 1.00
## logfreq.c100                      -1.28     13.76   -28.66    26.00 1.00
## Median_Initial.c100:Vocab.c100    -0.07      0.25    -0.56     0.43 1.00
##                                Bulk_ESS Tail_ESS
## Intercept                          6209     7228
## Median_Initial.c100                7086     6675
## Vocab.c100                         8804     6458
## AoA.c100                           7516     6589
## First_Instance                    14467     7801
## TrialNumber.100                   10396     7534
## logfreq.c100                       7516     6413
## Median_Initial.c100:Vocab.c100     9853     7400
## 
## Family Specific Parameters: 
##     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## phi     3.83      0.09     3.65     4.01 1.00     8665     6800
## 
## Samples were drawn using sampling(NUTS). 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).
remove(mpo)
remove(mpo_baseline)
remove(mpo_1)

Analysis of RTs

Get number of trials per participant

## 
##  4  6  7  8  9 10 11 12 13 14 15 16 17 18 19 
##  1  3  3  6  6 18 17  5 10 10 10  5  1  3  2

Re-scale variables to make coefficients more interpretable

RT_30mo <- mutate(RT_30mo,
  Vocab.c100 = Vocab.c/100,
  logfreq.c100 = logfreq.c/100,
  Median_Initial.c100 = Median_Initial.c/100,
  log_Median_Initial.c = (log(Median_Initial) - mean(log(Median_Initial)))/100, 
  AoA.c100 = (Percent_75_Amer - mean(Percent_75_Amer))/100,
  Duration.c100 = (Duration-mean(Duration))/100,
  TrialNumber.c100 = (TrialNumber - median(TrialNumber))/100
  )

Summary statistics by words

RT_30mo %>%
  group_by(Target) %>%
  summarise(
    RT_mean = mean(RT, na.rm=TRUE), 
    RT_sd = sd(RT, na.rm=TRUE),
    count = n()
  )
## `summarise()` ungrouping output (override with `.groups` argument)

Baseline model – main effect of Initial density.

m0 <- brm(RT ~ Median_Initial.c100+ Vocab.c100  + First_Instance + Pre_Onset_Prop + TargetProp + logfreq.c100+ AoA.c100 + First_Instance + Duration.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp +  Duration.c100 +  Pre_Onset_Prop  + logfreq.c100 + AoA.c100|| ParticipantName) + (1 +  Vocab.c100 + First_Instance +  Pre_Onset_Prop  || Target), prior=prior(student_t(5,0,2), class=sd), family="shifted_lognormal", file="Supp2/m0",
           data=RT_30mo, chains=4, iter=5000, cores=8, save_all_pars=TRUE)

m0<- add_criterion(m0, "loo")
tibble(m0_k = m0$criteria$loo$diagnostics$pareto_k) %>%
  ggplot(aes(x=m0_k)) +
  geom_vline(xintercept=.5, linetype=2) +
  stat_dots()

pp_check(m0)
## Using 10 posterior samples for ppc type 'dens_overlay' by default.

summary(m0)
##  Family: shifted_lognormal 
##   Links: mu = identity; sigma = identity; ndt = identity 
## Formula: RT ~ Median_Initial.c100 + Vocab.c100 + First_Instance + Pre_Onset_Prop + TargetProp + logfreq.c100 + AoA.c100 + First_Instance + Duration.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + Duration.c100 + Pre_Onset_Prop + logfreq.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: RT_30mo (Number of observations: 1181) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 100) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.14      0.06     0.01     0.23 1.00      985
## sd(Median_Initial.c100)     0.99      0.31     0.29     1.56 1.00     2516
## sd(First_Instance)          0.10      0.06     0.01     0.21 1.00     1831
## sd(TargetProp)              0.16      0.10     0.01     0.37 1.00      929
## sd(Duration.c100)           0.04      0.02     0.00     0.09 1.00     2530
## sd(Pre_Onset_Prop)          0.14      0.09     0.01     0.35 1.00     2024
## sd(logfreq.c100)            2.24      1.98     0.08     7.54 1.00     5517
## sd(AoA.c100)                1.67      1.00     0.10     3.71 1.00     2821
##                         Tail_ESS
## sd(Intercept)               1881
## sd(Median_Initial.c100)     2304
## sd(First_Instance)          3580
## sd(TargetProp)              2434
## sd(Duration.c100)           4342
## sd(Pre_Onset_Prop)          3912
## sd(logfreq.c100)            5556
## sd(AoA.c100)                4181
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.06      0.04     0.00     0.17 1.00     3624     6298
## sd(Vocab.c100)         0.03      0.02     0.00     0.08 1.00     4566     5260
## sd(First_Instance)     0.09      0.05     0.00     0.20 1.00     3314     5098
## sd(Pre_Onset_Prop)     0.13      0.08     0.01     0.32 1.00     3593     4070
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept               6.31      0.22     5.89     6.76 1.00    10452     7335
## Median_Initial.c100     0.51      0.35    -0.15     1.22 1.00     9081     7483
## Vocab.c100             -0.07      0.03    -0.12    -0.02 1.00    13927     8198
## First_Instance         -0.01      0.05    -0.09     0.08 1.00    13817     7527
## Pre_Onset_Prop         -0.15      0.11    -0.37     0.06 1.00    17424     8111
## TargetProp             -0.93      0.41    -1.79    -0.17 1.00    10959     7001
## logfreq.c100            2.72      4.04    -5.31    10.80 1.00    11509     6901
## AoA.c100                1.22      1.33    -1.35     3.94 1.00    10681     7482
## Duration.c100           0.01      0.03    -0.05     0.07 1.00     9500     6920
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.59      0.03     0.54     0.64 1.00     8337     6997
## ndt     142.29     10.07   120.79   160.08 1.00    10716     6465
## 
## Samples were drawn using sampling(NUTS). 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).
hypothesis(m0, "Median_Initial.c100  > 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... > 0     0.51      0.35    -0.05     1.08      14.38
##   Post.Prob Star
## 1      0.94     
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
RT_30mo%>%
  mutate(
    m0_k = m0$criteria$loo$diagnostics$pareto_k
  ) %>%
  filter(m0_k >= .65)
m0b <- RT_30mo%>%
  mutate(
    m0_k = m0$criteria$loo$diagnostics$pareto_k
  ) %>%
  filter(m0_k < .65) %>%
  brm(RT ~ Median_Initial.c100+Vocab.c100 + First_Instance + logfreq.c100  + First_Instance + TargetProp +  Pre_Onset_Prop +  Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + Pre_Onset_Prop +   Duration.c100 + logfreq.c100 + AoA.c100|| ParticipantName) + (1 +  Vocab.c100 + First_Instance + Pre_Onset_Prop   || Target), family="shifted_lognormal", file="Supp2/m0b", data=., prior=prior(student_t(5,0,2), class=sd), chains=4, iter=5000, cores=8, save_all_pars=TRUE)
summary(m0b)
##  Family: shifted_lognormal 
##   Links: mu = identity; sigma = identity; ndt = identity 
## Formula: RT ~ Median_Initial.c100 + Vocab.c100 + First_Instance + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + logfreq.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: . (Number of observations: 1181) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 100) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.14      0.05     0.01     0.23 1.01      707
## sd(Median_Initial.c100)     1.00      0.32     0.27     1.58 1.00     2175
## sd(First_Instance)          0.10      0.06     0.01     0.21 1.01     1280
## sd(TargetProp)              0.15      0.10     0.01     0.36 1.01      733
## sd(Pre_Onset_Prop)          0.14      0.09     0.01     0.34 1.00     1583
## sd(Duration.c100)           0.04      0.02     0.00     0.09 1.00     2511
## sd(logfreq.c100)            2.24      2.02     0.08     7.55 1.00     3979
## sd(AoA.c100)                1.70      1.02     0.09     3.79 1.00     2583
##                         Tail_ESS
## sd(Intercept)                952
## sd(Median_Initial.c100)     1729
## sd(First_Instance)          3340
## sd(TargetProp)              1919
## sd(Pre_Onset_Prop)          3153
## sd(Duration.c100)           4489
## sd(logfreq.c100)            4477
## sd(AoA.c100)                4031
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.06      0.04     0.00     0.17 1.00     2634     3967
## sd(Vocab.c100)         0.03      0.02     0.00     0.08 1.00     3864     4958
## sd(First_Instance)     0.09      0.05     0.01     0.21 1.00     2433     4254
## sd(Pre_Onset_Prop)     0.13      0.08     0.01     0.32 1.00     2892     4758
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept               6.31      0.22     5.88     6.76 1.00     8163     5714
## Median_Initial.c100     0.51      0.35    -0.17     1.22 1.00     7388     5979
## Vocab.c100             -0.07      0.03    -0.12    -0.02 1.00     8713     6752
## First_Instance         -0.01      0.05    -0.10     0.08 1.00     9824     7461
## logfreq.c100            2.68      4.03    -5.26    10.65 1.00     7622     6460
## TargetProp             -0.94      0.41    -1.77    -0.14 1.00     8277     5686
## Pre_Onset_Prop         -0.15      0.11    -0.36     0.06 1.00    12940     7931
## Duration.c100           0.01      0.03    -0.06     0.07 1.00     6726     5682
## AoA.c100                1.24      1.34    -1.27     4.01 1.00     6530     5160
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.59      0.03     0.54     0.64 1.00     6315     6546
## ndt     142.45      9.82   121.21   159.78 1.00     7790     6668
## 
## Samples were drawn using sampling(NUTS). 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).

Add Interaction

m1 <- brm(RT ~ Median_Initial.c100*Vocab.c100 + First_Instance + logfreq.c100  + First_Instance + TargetProp +  Pre_Onset_Prop  + AoA.c100 + Duration.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + + Duration.c100 + Pre_Onset_Prop + logfreq.c100 + AoA.c100|| ParticipantName) + (1 +  Vocab.c100 + First_Instance + Pre_Onset_Prop  || Target), family="shifted_lognormal", file="Supp2/m1", data=RT_30mo, prior=prior(student_t(5,0,2), class=sd), chains=4, iter=5000, cores=8, save_all_pars=TRUE)

m1 <- add_criterion(m1, "loo")
summary(m1)
##  Family: shifted_lognormal 
##   Links: mu = identity; sigma = identity; ndt = identity 
## Formula: RT ~ Median_Initial.c100 * Vocab.c100 + First_Instance + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + AoA.c100 + Duration.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + +Duration.c100 + Pre_Onset_Prop + logfreq.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: RT_30mo (Number of observations: 1181) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 100) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.14      0.05     0.02     0.23 1.01      671
## sd(Median_Initial.c100)     0.99      0.32     0.27     1.57 1.00     1935
## sd(First_Instance)          0.10      0.06     0.01     0.21 1.00     1913
## sd(TargetProp)              0.16      0.10     0.01     0.36 1.00      679
## sd(Duration.c100)           0.04      0.02     0.00     0.09 1.00     2416
## sd(Pre_Onset_Prop)          0.14      0.09     0.01     0.34 1.00     1436
## sd(logfreq.c100)            2.24      2.00     0.07     7.63 1.00     4644
## sd(AoA.c100)                1.70      1.02     0.08     3.80 1.00     1935
##                         Tail_ESS
## sd(Intercept)               1019
## sd(Median_Initial.c100)     1548
## sd(First_Instance)          3664
## sd(TargetProp)              1807
## sd(Duration.c100)           4127
## sd(Pre_Onset_Prop)          2870
## sd(logfreq.c100)            5061
## sd(AoA.c100)                2540
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.07      0.05     0.00     0.17 1.00     2147     3524
## sd(Vocab.c100)         0.03      0.02     0.00     0.07 1.00     4031     3867
## sd(First_Instance)     0.09      0.05     0.00     0.20 1.00     2533     3806
## sd(Pre_Onset_Prop)     0.13      0.09     0.01     0.33 1.00     2731     3779
## 
## Population-Level Effects: 
##                                Estimate Est.Error l-95% CI u-95% CI Rhat
## Intercept                          6.31      0.23     5.86     6.79 1.00
## Median_Initial.c100                0.57      0.35    -0.13     1.26 1.00
## Vocab.c100                        -0.08      0.03    -0.13    -0.03 1.00
## First_Instance                    -0.01      0.05    -0.10     0.08 1.00
## logfreq.c100                       2.72      4.07    -5.49    10.73 1.00
## TargetProp                        -0.93      0.42    -1.82    -0.13 1.00
## Pre_Onset_Prop                    -0.15      0.11    -0.37     0.07 1.00
## AoA.c100                           1.25      1.37    -1.36     4.03 1.00
## Duration.c100                      0.01      0.03    -0.06     0.07 1.00
## Median_Initial.c100:Vocab.c100     0.35      0.20    -0.04     0.76 1.00
##                                Bulk_ESS Tail_ESS
## Intercept                          7140     6308
## Median_Initial.c100                6425     6588
## Vocab.c100                         7815     6995
## First_Instance                     7742     6863
## logfreq.c100                       6155     6131
## TargetProp                         6616     6202
## Pre_Onset_Prop                    10756     7744
## AoA.c100                           5829     6179
## Duration.c100                      5273     5806
## Median_Initial.c100:Vocab.c100     9045     7367
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.59      0.03     0.54     0.65 1.00     5099     6473
## ndt     142.80     10.05   121.19   160.46 1.00     5751     6202
## 
## Samples were drawn using sampling(NUTS). 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).
hypothesis(m1, "Median_Initial.c100:Vocab.c100 > 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... > 0     0.35       0.2     0.02     0.69      23.88
##   Post.Prob Star
## 1      0.96    *
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
hypothesis(m1, "Median_Initial.c100 > 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... > 0     0.57      0.35    -0.02     1.15      16.95
##   Post.Prob Star
## 1      0.94     
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
tibble(m1_k = m1$criteria$loo$diagnostics$pareto_k) %>%
  ggplot(aes(x=m1_k)) +
  geom_vline(xintercept=.5, linetype=2) +
  stat_dots()

1 observations had pareto ks above .7.

RT_30mo%>%
  mutate(
    m1_k = m1$criteria$loo$diagnostics$pareto_k
  ) %>%
  filter(m1_k >= .69)

I have noticed that in some runs, this model has trouble – producing large R hat statistics, small effective sample sizes and Pareto’s Ks of 8 or so. It usually runs fine however and produces output similar to what is discussed in the paper.

m1b <- RT_30mo%>%
  mutate(
    m1_k = m1$criteria$loo$diagnostics$pareto_k
  ) %>%
  filter(m1_k < .69) %>%
  brm(RT ~ Median_Initial.c100*Vocab.c100 + First_Instance + logfreq.c100  + First_Instance + TargetProp +  Pre_Onset_Prop +  Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + Pre_Onset_Prop +   Duration.c100 + logfreq.c100 + AoA.c100|| ParticipantName) + (1 +  Vocab.c100 + First_Instance + Pre_Onset_Prop   || Target), family="shifted_lognormal", file="Supp2/m1b", data=., prior=prior(student_t(5,0,2), class=sd), chains=4, iter=5000, cores=8, save_all_pars=TRUE)
summary(m1b)
## Warning: There were 1 divergent transitions after warmup. Increasing adapt_delta
## above 0.8 may help. See http://mc-stan.org/misc/warnings.html#divergent-
## transitions-after-warmup
##  Family: shifted_lognormal 
##   Links: mu = identity; sigma = identity; ndt = identity 
## Formula: RT ~ Median_Initial.c100 * Vocab.c100 + First_Instance + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + logfreq.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: . (Number of observations: 1180) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 100) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.15      0.05     0.02     0.24 1.00      800
## sd(Median_Initial.c100)     0.94      0.32     0.21     1.52 1.00     1921
## sd(First_Instance)          0.10      0.06     0.01     0.21 1.00     1892
## sd(TargetProp)              0.15      0.10     0.01     0.36 1.01      742
## sd(Pre_Onset_Prop)          0.14      0.09     0.01     0.33 1.00     1614
## sd(Duration.c100)           0.04      0.03     0.00     0.10 1.00     2587
## sd(logfreq.c100)            2.23      2.01     0.07     7.68 1.00     5148
## sd(AoA.c100)                1.85      1.06     0.11     3.97 1.01     2006
##                         Tail_ESS
## sd(Intercept)                942
## sd(Median_Initial.c100)     1642
## sd(First_Instance)          4084
## sd(TargetProp)              1880
## sd(Pre_Onset_Prop)          3315
## sd(Duration.c100)           4333
## sd(logfreq.c100)            5067
## sd(AoA.c100)                3424
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.07      0.05     0.00     0.17 1.00     2892     4612
## sd(Vocab.c100)         0.03      0.02     0.00     0.08 1.00     4346     5458
## sd(First_Instance)     0.09      0.05     0.00     0.20 1.00     3040     4492
## sd(Pre_Onset_Prop)     0.14      0.09     0.01     0.33 1.00     3317     4787
## 
## Population-Level Effects: 
##                                Estimate Est.Error l-95% CI u-95% CI Rhat
## Intercept                          6.31      0.22     5.90     6.77 1.00
## Median_Initial.c100                0.58      0.36    -0.13     1.29 1.00
## Vocab.c100                        -0.08      0.03    -0.14    -0.03 1.00
## First_Instance                    -0.00      0.05    -0.10     0.09 1.00
## logfreq.c100                       2.60      4.09    -5.29    10.71 1.00
## TargetProp                        -0.95      0.41    -1.82    -0.18 1.00
## Pre_Onset_Prop                    -0.15      0.11    -0.37     0.07 1.00
## Duration.c100                      0.01      0.03    -0.06     0.07 1.00
## AoA.c100                           1.27      1.37    -1.36     4.12 1.00
## Median_Initial.c100:Vocab.c100     0.31      0.20    -0.09     0.71 1.00
##                                Bulk_ESS Tail_ESS
## Intercept                          7853     6685
## Median_Initial.c100                7943     6398
## Vocab.c100                         8748     7361
## First_Instance                     8754     7525
## logfreq.c100                       7884     6583
## TargetProp                         7728     6792
## Pre_Onset_Prop                    12065     8018
## Duration.c100                      6197     5287
## AoA.c100                           6307     5017
## Median_Initial.c100:Vocab.c100     9485     6858
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.59      0.03     0.54     0.65 1.00     6365     7433
## ndt     143.85     10.09   122.10   161.64 1.00     7538     6987
## 
## Samples were drawn using sampling(NUTS). 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).
hypothesis(m1b, "Median_Initial.c100:Vocab.c100 > 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... > 0     0.31       0.2    -0.03     0.65      14.77
##   Post.Prob Star
## 1      0.94     
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
hypothesis(m1b, "Median_Initial.c100 > 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... > 0     0.58      0.36        0     1.17      19.28
##   Post.Prob Star
## 1      0.95    *
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
m1b <- add_criterion(m1b, "loo")
tibble(m1b_k = m1b$criteria$loo$diagnostics$pareto_k) %>%
  ggplot(aes(x=m1b_k)) +
  geom_vline(xintercept=.5, linetype=2) +
  stat_dots()

library(patchwork)
p1 <- plot(marginal_effects(m0, "Median_Initial.c100"), points=TRUE) 
## Warning: Method 'marginal_effects' is deprecated. Please use
## 'conditional_effects' instead.

p1[[1]] + xlab("Onset Neighbourhood Density \n(Centred and divided by 100)") + theme_bw()|
p1[[1]] + xlab("Onset Neighbourhood Density \n(Centred and divided by 100)") + theme_bw() + ylim(c(200, 1000))
## Warning: Removed 81 rows containing missing values (geom_point).

p2 <- plot(marginal_effects(m1b, "Median_Initial.c100:Vocab.c100"), points=TRUE)
## Warning: Method 'marginal_effects' is deprecated. Please use
## 'conditional_effects' instead.

p2a <- p2[[1]] +  xlab("Onset Neighbourhood Density \n(Centred and divided by 100)") + theme_bw() +
scale_colour_discrete(name = "Vocab", labels = c("High", "Medium", "Low")) + 
scale_fill_discrete(name = "Vocab", labels = c("High", "Medium", "Low")) 
p2b <- p2[[1]] +  xlab("Onset Neighbourhood Density \n(Centred and divided by 100)") + theme_bw() +
scale_colour_discrete(name = "Vocab", labels = c("High", "Medium", "Low")) + 
scale_fill_discrete(name = "Vocab", labels = c("High", "Medium", "Low"))  + 
  ylim(c(200, 1000))
m1 %>%
  posterior_samples %>%
  select("b_Median_Initial.c100", "b_Median_Initial.c100:Vocab.c100") %>%
  mutate(
    Below_Mean =  b_Median_Initial.c100 - 1.28839*`b_Median_Initial.c100:Vocab.c100`,
    At_Mean = b_Median_Initial.c100 - 0.1901011*`b_Median_Initial.c100:Vocab.c100`, 
    Above_Mean = b_Median_Initial.c100 + 0.9081879*`b_Median_Initial.c100:Vocab.c100`
 ) %>%
  select(Below_Mean, At_Mean, Above_Mean) %>%
  pivot_longer(everything()) %>%
  group_by(name) %>%
  mean_hdi()
remove(m1)
remove(m1b)
remove(m0)

Split dataset by high and low vocbaulary groups

low_only <- filter(RT_30mo, VocabSplit=="low")
high_only <- filter(RT_30mo, VocabSplit=="high")
m2 <- brm(RT ~ Median_Initial.c100 + First_Instance + logfreq.c100  + TargetProp + Pre_Onset_Prop  + Duration.c100 + Vocab.c100+ AoA.c100+ (1 + Median_Initial.c100 + First_Instance + logfreq.c100 + Pre_Onset_Prop   + TargetProp + Duration.c100 + AoA.c100 || ParticipantName) + (1 +  First_Instance + Vocab.c100 + Pre_Onset_Prop   || Target), family="shifted_lognormal", data=high_only, chains=4, file="Supp2/m2", iter=5000, cores=8, save_all_pars=TRUE)


m2 <- add_criterion(m2, "loo")
## Automatically saving the model object in 'Supp2/m2.rds'
tibble(m2_k = m2$criteria$loo$diagnostics$pareto_k) %>%
  ggplot(aes(x=m2_k)) +
  geom_vline(xintercept=.5, linetype=2) +
  stat_dots()

summary(m2)
##  Family: shifted_lognormal 
##   Links: mu = identity; sigma = identity; ndt = identity 
## Formula: RT ~ Median_Initial.c100 + First_Instance + logfreq.c100 + TargetProp + Pre_Onset_Prop + Duration.c100 + Vocab.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + logfreq.c100 + Pre_Onset_Prop + TargetProp + Duration.c100 + AoA.c100 || ParticipantName) + (1 + First_Instance + Vocab.c100 + Pre_Onset_Prop || Target) 
##    Data: high_only (Number of observations: 611) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 52) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.13      0.07     0.01     0.26 1.00     1138
## sd(Median_Initial.c100)     0.91      0.45     0.08     1.77 1.00     2462
## sd(First_Instance)          0.09      0.06     0.00     0.23 1.00     2787
## sd(logfreq.c100)            6.27      5.59     0.17    19.42 1.00     2046
## sd(Pre_Onset_Prop)          0.23      0.14     0.01     0.51 1.00     1577
## sd(TargetProp)              0.19      0.12     0.01     0.44 1.00     1226
## sd(Duration.c100)           0.08      0.04     0.01     0.16 1.00     1928
## sd(AoA.c100)                1.95      1.31     0.07     4.81 1.00     2337
##                         Tail_ESS
## sd(Intercept)               2328
## sd(Median_Initial.c100)     3148
## sd(First_Instance)          4567
## sd(logfreq.c100)            3931
## sd(Pre_Onset_Prop)          3224
## sd(TargetProp)              2755
## sd(Duration.c100)           2225
## sd(AoA.c100)                3582
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.08      0.06     0.00     0.22 1.00     2943     4716
## sd(First_Instance)     0.13      0.08     0.01     0.31 1.00     2242     2942
## sd(Vocab.c100)         0.08      0.06     0.00     0.22 1.00     4017     4042
## sd(Pre_Onset_Prop)     0.15      0.11     0.01     0.40 1.00     3519     4356
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept               6.40      0.32     5.79     7.04 1.00     6995     6401
## Median_Initial.c100     0.88      0.50    -0.10     1.87 1.00     5864     6078
## First_Instance         -0.07      0.07    -0.20     0.07 1.00     7390     6651
## logfreq.c100            0.84      5.98   -11.25    12.59 1.00     5678     6010
## TargetProp             -1.37      0.57    -2.55    -0.27 1.00     6634     6488
## Pre_Onset_Prop         -0.11      0.17    -0.43     0.22 1.00    10133     7431
## Duration.c100          -0.00      0.05    -0.10     0.09 1.00     5093     5195
## Vocab.c100              0.04      0.11    -0.17     0.25 1.00     7034     7221
## AoA.c100                1.43      1.92    -2.25     5.30 1.00     5243     4953
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.64      0.04     0.56     0.72 1.00     4772     6137
## ndt     156.24     10.85   132.43   174.37 1.00     5767     6682
## 
## Samples were drawn using sampling(NUTS). 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).
hypothesis(m2, "Median_Initial.c100 > 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... > 0     0.88       0.5     0.07      1.7      25.25
##   Post.Prob Star
## 1      0.96    *
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
high_only%>%
  mutate(
    m1_k = m2$criteria$loo$diagnostics$pareto_k
  ) %>%
  filter(m1_k > .7)
m2b <- high_only%>%
  mutate(
    m1_k = m2$criteria$loo$diagnostics$pareto_k
  ) %>%
  filter(m1_k < .7) %>%
  brm(RT ~ Median_Initial.c100+ Vocab.c100 + First_Instance + logfreq.c100  + First_Instance + TargetProp +  Pre_Onset_Prop +  Duration.c100  +  AoA.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + Pre_Onset_Prop  + Duration.c100  + logfreq.c100 + AoA.c100|| ParticipantName) + (1 +  Vocab.c100 + First_Instance + Pre_Onset_Prop   || Target), family="shifted_lognormal", file="Supp2/m2b", data=., prior=prior(student_t(3,0,2), class=sd), chains=4, iter=5000, cores=8, save_all_pars=TRUE)
summary(m2b)
##  Family: shifted_lognormal 
##   Links: mu = identity; sigma = identity; ndt = identity 
## Formula: RT ~ Median_Initial.c100 + Vocab.c100 + First_Instance + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + logfreq.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: . (Number of observations: 611) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 52) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.13      0.07     0.01     0.26 1.00     1275
## sd(Median_Initial.c100)     0.88      0.45     0.07     1.76 1.00     2266
## sd(First_Instance)          0.09      0.06     0.00     0.22 1.00     2824
## sd(TargetProp)              0.19      0.12     0.01     0.44 1.00     1506
## sd(Pre_Onset_Prop)          0.23      0.14     0.01     0.51 1.00     1517
## sd(Duration.c100)           0.08      0.04     0.01     0.16 1.00     2506
## sd(logfreq.c100)            4.84      5.04     0.13    17.94 1.00     2688
## sd(AoA.c100)                1.78      1.23     0.08     4.54 1.00     2961
##                         Tail_ESS
## sd(Intercept)               3084
## sd(Median_Initial.c100)     2726
## sd(First_Instance)          4196
## sd(TargetProp)              3467
## sd(Pre_Onset_Prop)          3348
## sd(Duration.c100)           3123
## sd(logfreq.c100)            3781
## sd(AoA.c100)                4062
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.08      0.06     0.00     0.22 1.00     3200     4603
## sd(Vocab.c100)         0.08      0.06     0.00     0.22 1.00     3721     4477
## sd(First_Instance)     0.13      0.08     0.01     0.31 1.00     2705     3770
## sd(Pre_Onset_Prop)     0.15      0.11     0.01     0.41 1.00     3591     4552
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept               6.41      0.32     5.78     7.07 1.00     8054     6735
## Median_Initial.c100     0.88      0.49    -0.06     1.86 1.00     6209     6132
## Vocab.c100              0.04      0.11    -0.17     0.24 1.00     9171     7577
## First_Instance         -0.07      0.07    -0.21     0.07 1.00     9061     6896
## logfreq.c100            0.68      5.86   -11.15    12.03 1.00     6677     6860
## TargetProp             -1.38      0.59    -2.59    -0.24 1.00     7328     6795
## Pre_Onset_Prop         -0.11      0.17    -0.45     0.23 1.00    10618     7939
## Duration.c100          -0.00      0.05    -0.10     0.09 1.00     5589     5545
## AoA.c100                1.41      1.93    -2.31     5.37 1.00     5207     5288
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.64      0.04     0.56     0.72 1.00     4946     5435
## ndt     155.95     11.03   131.80   174.59 1.00     6192     5805
## 
## Samples were drawn using sampling(NUTS). 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).
hypothesis(m2b, "Median_Initial.c100 > 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... > 0     0.88      0.49     0.09     1.69       29.4
##   Post.Prob Star
## 1      0.97    *
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.

Low vocabulary participants.

m3 <- brm(RT ~ Median_Initial.c100 + First_Instance+ logfreq.c100 + Vocab.c100 + Pre_Onset_Prop  + TargetProp + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + logfreq.c100 + Duration.c100+ Pre_Onset_Prop + TargetProp + AoA.c100 || ParticipantName) + (1 +  First_Instance + Vocab.c100 + Pre_Onset_Prop  || Target), family="shifted_lognormal", data=low_only, chains=4, iter=1000, file="Supp2/m3", cores=8, save_all_pars=TRUE)

m3 <- add_criterion(m3, "loo")
## Automatically saving the model object in 'Supp2/m3.rds'
tibble(m3_k = m3$criteria$loo$diagnostics$pareto_k) %>%
  ggplot(aes(x=m3_k)) +
  geom_vline(xintercept=.5, linetype=2) +
  stat_dots()

summary(m3)
##  Family: shifted_lognormal 
##   Links: mu = identity; sigma = identity; ndt = identity 
## Formula: RT ~ Median_Initial.c100 + First_Instance + logfreq.c100 + Vocab.c100 + Pre_Onset_Prop + TargetProp + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + logfreq.c100 + Duration.c100 + Pre_Onset_Prop + TargetProp + AoA.c100 || ParticipantName) + (1 + First_Instance + Vocab.c100 + Pre_Onset_Prop || Target) 
##    Data: low_only (Number of observations: 570) 
## Samples: 4 chains, each with iter = 1000; warmup = 500; thin = 1;
##          total post-warmup samples = 2000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 48) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.14      0.06     0.01     0.25 1.01      261
## sd(Median_Initial.c100)     1.05      0.43     0.16     1.88 1.01      321
## sd(First_Instance)          0.12      0.07     0.01     0.26 1.01      391
## sd(logfreq.c100)            2.03      1.80     0.07     6.68 1.00     1275
## sd(Duration.c100)           0.03      0.02     0.00     0.09 1.00      701
## sd(Pre_Onset_Prop)          0.13      0.09     0.00     0.36 1.01      330
## sd(TargetProp)              0.17      0.11     0.01     0.40 1.01      232
## sd(AoA.c100)                1.65      1.12     0.07     4.01 1.00      626
##                         Tail_ESS
## sd(Intercept)                356
## sd(Median_Initial.c100)      234
## sd(First_Instance)           597
## sd(logfreq.c100)             887
## sd(Duration.c100)            492
## sd(Pre_Onset_Prop)           603
## sd(TargetProp)               726
## sd(AoA.c100)                 929
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.07      0.05     0.00     0.21 1.01      439      650
## sd(First_Instance)     0.07      0.05     0.00     0.18 1.01      852      708
## sd(Vocab.c100)         0.03      0.02     0.00     0.09 1.00      889     1143
## sd(Pre_Onset_Prop)     0.16      0.11     0.01     0.42 1.01      502      810
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept               6.09      0.29     5.54     6.68 1.01     1035     1081
## Median_Initial.c100     0.12      0.44    -0.77     0.93 1.00      998     1235
## First_Instance          0.05      0.06    -0.06     0.17 1.00     1839     1540
## logfreq.c100            3.95      5.21    -6.39    14.80 1.00     1039     1166
## Vocab.c100             -0.06      0.04    -0.14     0.03 1.00     1189     1478
## Pre_Onset_Prop         -0.18      0.15    -0.48     0.13 1.00     1728     1544
## TargetProp             -0.47      0.53    -1.60     0.53 1.01      972      899
## Duration.c100           0.03      0.04    -0.05     0.11 1.01      847      875
## AoA.c100                1.16      1.74    -2.02     4.62 1.01      903      795
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.57      0.04     0.50     0.65 1.01      908     1081
## ndt     142.05     15.75   106.90   168.25 1.00      873     1160
## 
## Samples were drawn using sampling(NUTS). 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).
hypothesis(m3, "Median_Initial.c100 > 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... > 0     0.12      0.44    -0.61     0.77       1.64
##   Post.Prob Star
## 1      0.62     
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
m3b <- low_only%>%
  mutate(
    m1_k = m3$criteria$loo$diagnostics$pareto_k
  ) %>%
  filter(m1_k < .7) %>%
  brm(RT ~ Median_Initial.c100+ Vocab.c100 + First_Instance + logfreq.c100  + First_Instance + TargetProp +  Pre_Onset_Prop + Duration.c100  +   AoA.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + Pre_Onset_Prop  +Duration.c100  +  logfreq.c100 + AoA.c100|| ParticipantName) + (1 +  Vocab.c100 + First_Instance + Pre_Onset_Prop  || Target), family="shifted_lognormal", file="Supp2/m3b", data=., prior=prior(student_t(3,0,2), class=sd), chains=4, iter=1000, cores=8, save_all_pars=TRUE)
summary(m3b)
##  Family: shifted_lognormal 
##   Links: mu = identity; sigma = identity; ndt = identity 
## Formula: RT ~ Median_Initial.c100 + Vocab.c100 + First_Instance + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + logfreq.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: . (Number of observations: 570) 
## Samples: 4 chains, each with iter = 1000; warmup = 500; thin = 1;
##          total post-warmup samples = 2000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 48) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.14      0.06     0.01     0.25 1.04      169
## sd(Median_Initial.c100)     1.06      0.45     0.12     1.91 1.01      431
## sd(First_Instance)          0.13      0.07     0.01     0.26 1.02      336
## sd(TargetProp)              0.17      0.11     0.01     0.40 1.02      243
## sd(Pre_Onset_Prop)          0.14      0.09     0.01     0.35 1.00      528
## sd(Duration.c100)           0.03      0.02     0.00     0.08 1.00      920
## sd(logfreq.c100)            1.72      1.58     0.05     5.84 1.00     1175
## sd(AoA.c100)                1.50      1.04     0.06     3.86 1.01      643
##                         Tail_ESS
## sd(Intercept)                358
## sd(Median_Initial.c100)      385
## sd(First_Instance)           621
## sd(TargetProp)               728
## sd(Pre_Onset_Prop)           731
## sd(Duration.c100)           1136
## sd(logfreq.c100)             836
## sd(AoA.c100)                 893
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.07      0.05     0.00     0.19 1.00      676      844
## sd(Vocab.c100)         0.03      0.03     0.00     0.09 1.00      899     1085
## sd(First_Instance)     0.07      0.05     0.00     0.18 1.01     1101     1397
## sd(Pre_Onset_Prop)     0.16      0.11     0.01     0.41 1.00      655      707
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept               6.09      0.28     5.55     6.63 1.00     1507     1510
## Median_Initial.c100     0.13      0.44    -0.71     1.02 1.00     1511     1188
## Vocab.c100             -0.06      0.04    -0.14     0.02 1.00     1405     1304
## First_Instance          0.05      0.06    -0.06     0.17 1.00     2084     1402
## logfreq.c100            3.48      4.99    -6.52    13.48 1.00     1484     1162
## TargetProp             -0.48      0.51    -1.50     0.51 1.00     1523     1539
## Pre_Onset_Prop         -0.18      0.16    -0.50     0.13 1.00     2255     1544
## Duration.c100           0.03      0.04    -0.05     0.11 1.00     1384      983
## AoA.c100                1.04      1.65    -2.13     4.25 1.00     1513     1475
## 
## Family Specific Parameters: 
##       Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sigma     0.57      0.04     0.50     0.65 1.00      992      977
## ndt     142.38     15.19   110.45   167.80 1.00     1285     1284
## 
## Samples were drawn using sampling(NUTS). 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).
remove(m2)
remove(m2b)
remove(m3)
remove(m3b)

Proportion of Looks to Target

LT_30mo$Prop2 <- ((LT_30mo$Prop)*(LT_30mo$SamplesTotal-1) + 1/2)/LT_30mo$SamplesTotal
LT_30mo <- mutate(LT_30mo, 
Vocab.c100 = (Vocab.c - median(Vocab.c))/100,
AoA.c100 = (Percent_75_Amer - mean(Percent_75_Amer))/100,
Median_Initial.c100 = Median_Initial.c/100,
logfreq.c100 = logfreq.c/100, 
Duration.c100 = (Duration - mean(Duration))/100)

Get descriptive statistics for proportions

LT_30mo %>%
  group_by(Target) %>%
  summarise(
    Prop_mean = mean(Prop, na.rm=TRUE), 
    Prop_sd = sd(Prop, na.rm=TRUE),
  )
## `summarise()` ungrouping output (override with `.groups` argument)
m4 <- brm(Prop2 ~ Median_Initial.c100 + Vocab.c100 + logfreq.c100 +  First_Instance + TargetProp + Pre_Onset_Prop  + Duration.c100 + AoA.c100  + (1 + Median_Initial.c100  + TargetProp + Pre_Onset_Prop + logfreq.c100 + Duration.c100 +  First_Instance + AoA.c100|| ParticipantName) + (1 + First_Instance  + Vocab.c100 +  Pre_Onset_Prop  || Target),prior=prior(student_t(5,0,2), class=sd), file="Supp2/m4", family=Beta("logit", "log"), data=LT_30mo, chains=4,  cores=8, iter=5000, save_all_pars=TRUE)

m4 <- add_criterion(m4, "loo")
## Automatically saving the model object in 'Supp2/m4.rds'
tibble(m4_k = m4$criteria$loo$diagnostics$pareto_k) %>%
  ggplot(aes(x=m4_k)) +
  geom_vline(xintercept=.5, linetype=2) +
  stat_dots()

loo(m4)
## 
## Computed from 10000 by 3376 log-likelihood matrix
## 
##          Estimate    SE
## elpd_loo   2585.3  77.0
## p_loo        95.8   3.1
## looic     -5170.7 154.1
## ------
## Monte Carlo SE of elpd_loo is 0.1.
## 
## All Pareto k estimates are good (k < 0.5).
## See help('pareto-k-diagnostic') for details.
summary(m4)
##  Family: beta 
##   Links: mu = logit; phi = identity 
## Formula: Prop2 ~ Median_Initial.c100 + Vocab.c100 + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + TargetProp + Pre_Onset_Prop + logfreq.c100 + Duration.c100 + First_Instance + AoA.c100 || ParticipantName) + (1 + First_Instance + Vocab.c100 + Pre_Onset_Prop || Target) 
##    Data: LT_30mo (Number of observations: 3376) 
## Samples: 4 chains, each with iter = 5000; warmup = 2500; thin = 1;
##          total post-warmup samples = 10000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 100) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.21      0.04     0.11     0.28 1.00      833
## sd(Median_Initial.c100)     0.31      0.22     0.01     0.83 1.00     2766
## sd(TargetProp)              0.12      0.09     0.01     0.32 1.00      719
## sd(Pre_Onset_Prop)          0.09      0.06     0.00     0.24 1.00     1348
## sd(logfreq.c100)            1.84      1.55     0.08     5.90 1.00     5837
## sd(Duration.c100)           0.02      0.01     0.00     0.05 1.00     4125
## sd(First_Instance)          0.07      0.05     0.00     0.18 1.00     1883
## sd(AoA.c100)                1.04      0.76     0.04     2.81 1.00     3262
##                         Tail_ESS
## sd(Intercept)                623
## sd(Median_Initial.c100)     3086
## sd(TargetProp)               898
## sd(Pre_Onset_Prop)          2278
## sd(logfreq.c100)            5057
## sd(Duration.c100)           3662
## sd(First_Instance)          2939
## sd(AoA.c100)                4352
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.08      0.05     0.00     0.20 1.00     1584     2940
## sd(First_Instance)     0.08      0.05     0.00     0.19 1.00     2922     3922
## sd(Vocab.c100)         0.02      0.01     0.00     0.06 1.00     6310     4854
## sd(Pre_Onset_Prop)     0.13      0.08     0.01     0.31 1.00     1695     3143
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept              -0.88      0.26    -1.40    -0.38 1.00     4285     4464
## Median_Initial.c100    -0.57      0.37    -1.31     0.16 1.00     5151     5413
## Vocab.c100              0.01      0.03    -0.05     0.06 1.00     5339     6108
## logfreq.c100            0.47      4.77    -9.46     9.48 1.00     4199     4141
## First_Instance          0.04      0.04    -0.05     0.12 1.00     7933     6033
## TargetProp              2.44      0.47     1.55     3.40 1.00     4077     4619
## Pre_Onset_Prop          1.34      0.10     1.15     1.54 1.00     8134     6734
## Duration.c100           0.00      0.03    -0.07     0.07 1.00     4212     4480
## AoA.c100               -1.08      1.60    -4.42     1.98 1.00     3475     4547
## 
## Family Specific Parameters: 
##     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## phi     2.47      0.06     2.35     2.59 1.00     9433     6657
## 
## Samples were drawn using sampling(NUTS). 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).
pp_check(m4)
## Using 10 posterior samples for ppc type 'dens_overlay' by default.

p3 <- plot(conditional_effects(m4, "Median_Initial.c100"), theme(axis.title.x=element_text(size=2000)), points=TRUE)  

p3[[1]] + xlab("Onset Neighbourhood Density \n(Centred and divided by 100)") + ylab("Proportion of Looks to Target") |
p3[[1]] + xlab("Onset Neighbourhood Density \n(Centred and divided by 100)")+ ylab("Proportion of Looks to Target") + ylim(.5, 1)
## Warning: Removed 429 rows containing missing values (geom_point).

hypothesis(m4, "Median_Initial.c100 < 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... < 0    -0.57      0.37    -1.16     0.03      16.09
##   Post.Prob Star
## 1      0.94     
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
m5 <- brm(Prop2 ~ Median_Initial.c100*Vocab.c100 + First_Instance + logfreq.c100  + First_Instance + TargetProp + Pre_Onset_Prop  + Duration.c100 + AoA.c100+   (1 + Median_Initial.c100 +First_Instance + TargetProp  + logfreq.c100 + Pre_Onset_Prop  + Duration.c100 + AoA.c100|| ParticipantName) + (1 +  Vocab.c100 +First_Instance +  Pre_Onset_Prop   || Target), ,prior=prior(student_t(5,0,2), class=sd),  family=Beta("logit", "log"), data=LT_30mo, chains=4, file="Supp2/m5", iter=2000,  cores=8, save_all_pars=TRUE)

m5 <- add_criterion(m5, "loo")
## Automatically saving the model object in 'Supp2/m5.rds'
pp_check(m5)
## Using 10 posterior samples for ppc type 'dens_overlay' by default.

tibble(m5_k = m5$criteria$loo$diagnostics$pareto_k) %>%
  ggplot(aes(x=m5_k)) +
  geom_vline(xintercept=.5, linetype=2) +
  stat_dots()

summary(m5)
## Warning: There were 4 divergent transitions after warmup. Increasing adapt_delta
## above 0.8 may help. See http://mc-stan.org/misc/warnings.html#divergent-
## transitions-after-warmup
##  Family: beta 
##   Links: mu = logit; phi = identity 
## Formula: Prop2 ~ Median_Initial.c100 * Vocab.c100 + First_Instance + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + TargetProp + logfreq.c100 + Pre_Onset_Prop + Duration.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: LT_30mo (Number of observations: 3376) 
## Samples: 4 chains, each with iter = 2000; warmup = 1000; thin = 1;
##          total post-warmup samples = 4000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 100) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.21      0.04     0.12     0.28 1.01      504
## sd(Median_Initial.c100)     0.32      0.23     0.01     0.84 1.00     1471
## sd(First_Instance)          0.07      0.05     0.00     0.17 1.00      861
## sd(TargetProp)              0.11      0.08     0.01     0.31 1.02      357
## sd(logfreq.c100)            1.80      1.56     0.07     5.89 1.00     2246
## sd(Pre_Onset_Prop)          0.09      0.06     0.00     0.23 1.00      707
## sd(Duration.c100)           0.02      0.01     0.00     0.05 1.00     2020
## sd(AoA.c100)                1.04      0.77     0.04     2.84 1.00     1244
##                         Tail_ESS
## sd(Intercept)                350
## sd(Median_Initial.c100)     1600
## sd(First_Instance)          1710
## sd(TargetProp)               356
## sd(logfreq.c100)            1911
## sd(Pre_Onset_Prop)          1141
## sd(Duration.c100)           1440
## sd(AoA.c100)                1441
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.08      0.05     0.00     0.19 1.00      751     1045
## sd(Vocab.c100)         0.02      0.02     0.00     0.06 1.00     2309     2133
## sd(First_Instance)     0.08      0.05     0.00     0.19 1.00     1145     1301
## sd(Pre_Onset_Prop)     0.14      0.08     0.01     0.31 1.00      906     1344
## 
## Population-Level Effects: 
##                                Estimate Est.Error l-95% CI u-95% CI Rhat
## Intercept                         -0.88      0.26    -1.44    -0.39 1.00
## Median_Initial.c100               -0.56      0.37    -1.27     0.19 1.00
## Vocab.c100                         0.01      0.03    -0.05     0.06 1.00
## First_Instance                     0.04      0.04    -0.06     0.12 1.00
## logfreq.c100                       0.36      4.53    -9.05     8.97 1.00
## TargetProp                         2.46      0.47     1.56     3.44 1.00
## Pre_Onset_Prop                     1.34      0.10     1.13     1.53 1.00
## Duration.c100                      0.00      0.03    -0.06     0.07 1.00
## AoA.c100                          -1.05      1.52    -4.07     1.84 1.00
## Median_Initial.c100:Vocab.c100     0.10      0.18    -0.26     0.46 1.00
##                                Bulk_ESS Tail_ESS
## Intercept                          2046     1676
## Median_Initial.c100                2435     2394
## Vocab.c100                         2152     2610
## First_Instance                     3016     2443
## logfreq.c100                       2352     2249
## TargetProp                         1954     1680
## Pre_Onset_Prop                     3000     1966
## Duration.c100                      2225     1805
## AoA.c100                           2030     1999
## Median_Initial.c100:Vocab.c100     4063     2504
## 
## Family Specific Parameters: 
##     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## phi     2.47      0.06     2.36     2.59 1.00     4808     2859
## 
## Samples were drawn using sampling(NUTS). 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).
hypothesis(m5, "Median_Initial.c100:Vocab.c100 > 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... > 0      0.1      0.18    -0.19     0.39       2.41
##   Post.Prob Star
## 1      0.71     
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
hypothesis(m5, "Median_Initial.c100 < 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... < 0    -0.56      0.37    -1.16     0.04      15.53
##   Post.Prob Star
## 1      0.94     
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
p1 <- plot(marginal_effects(m4, "Median_Initial.c100")) 
## Warning: Method 'marginal_effects' is deprecated. Please use
## 'conditional_effects' instead.

p1[[1]] + xlab("Onset Neighbourhood Density \n(Centred and divided by 100)") + theme_bw()

p2 <- plot(marginal_effects(m5, "Median_Initial.c100:Vocab.c100"), points=TRUE)
## Warning: Method 'marginal_effects' is deprecated. Please use
## 'conditional_effects' instead.

p5<- p2[[1]] +  xlab("Onset Neighbourhood Density \n(Centred and divided by 100)") + theme_bw() +
scale_colour_discrete(name = "Vocab", labels = c("High", "Medium", "Low")) + 
scale_fill_discrete(name = "Vocab", labels = c("High", "Medium", "Low")) + 
  ylab("Proportion of Looks to Target") 

p6<- p2[[1]] +  xlab("Onset Neighbourhood Density \n(Centred and divided by 100)") + theme_bw() +
scale_colour_discrete(name = "Vocab", labels = c("High", "Medium", "Low")) + 
scale_fill_discrete(name = "Vocab", labels = c("High", "Medium", "Low")) + 
  ylab("Proportion of Looks to Target") + ylim(.5, 1)

p5 + p6 + plot_layout(guides = "collect")
## Warning: Removed 429 rows containing missing values (geom_point).

Split by vocabulary

low_only <- filter(LT_30mo, VocabSplit == "low")
high_only <- filter(LT_30mo, VocabSplit == "high")
m6 <- brm(Prop2 ~ Median_Initial.c100 + Vocab.c100 + First_Instance + logfreq.c100  + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 +First_Instance + logfreq.c + TargetProp + Pre_Onset_Prop  + Duration.c100 + AoA.c100 || ParticipantName) + (1 +  Vocab.c100 +First_Instance + Pre_Onset_Prop  || Target),  family=Beta("logit", "log"), data=high_only, iter=2000, file="Supp2/m6", chains=4,  cores=8, save_all_pars=TRUE)


m6 <- add_criterion(m6, "loo")
## Automatically saving the model object in 'Supp2/m6.rds'
summary(m6)
##  Family: beta 
##   Links: mu = logit; phi = identity 
## Formula: Prop2 ~ Median_Initial.c100 + Vocab.c100 + First_Instance + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + logfreq.c + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: high_only (Number of observations: 1722) 
## Samples: 4 chains, each with iter = 2000; warmup = 1000; thin = 1;
##          total post-warmup samples = 4000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 52) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.18      0.07     0.03     0.30 1.01      439
## sd(Median_Initial.c100)     0.36      0.27     0.01     0.99 1.00     1587
## sd(First_Instance)          0.06      0.05     0.00     0.17 1.00     1698
## sd(logfreq.c)               0.07      0.05     0.00     0.17 1.01      877
## sd(TargetProp)              0.16      0.11     0.01     0.41 1.01      391
## sd(Pre_Onset_Prop)          0.11      0.08     0.00     0.31 1.00      812
## sd(Duration.c100)           0.03      0.02     0.00     0.07 1.00     1978
## sd(AoA.c100)                1.34      0.98     0.06     3.61 1.00     1410
##                         Tail_ESS
## sd(Intercept)                573
## sd(Median_Initial.c100)     1639
## sd(First_Instance)          1903
## sd(logfreq.c)               1182
## sd(TargetProp)              1127
## sd(Pre_Onset_Prop)          1582
## sd(Duration.c100)           2148
## sd(AoA.c100)                1475
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.06      0.04     0.00     0.16 1.00     1772     2284
## sd(Vocab.c100)         0.10      0.06     0.01     0.24 1.00     1183     1785
## sd(First_Instance)     0.10      0.07     0.01     0.25 1.00     1189     1428
## sd(Pre_Onset_Prop)     0.08      0.06     0.00     0.23 1.00     1868     2197
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept              -0.96      0.28    -1.53    -0.40 1.00     2397     2907
## Median_Initial.c100    -0.34      0.41    -1.16     0.48 1.00     2333     2254
## Vocab.c100              0.06      0.11    -0.15     0.28 1.00     2577     2668
## First_Instance          0.11      0.06    -0.00     0.24 1.00     4046     3137
## logfreq.c100            3.41      5.29    -6.67    14.16 1.00     2407     2297
## TargetProp              2.42      0.50     1.44     3.44 1.00     2243     2692
## Pre_Onset_Prop          1.38      0.14     1.11     1.66 1.00     4199     2960
## Duration.c100          -0.00      0.04    -0.08     0.07 1.00     2194     2528
## AoA.c100                0.24      1.74    -3.19     3.75 1.00     2178     2011
## 
## Family Specific Parameters: 
##     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## phi     2.49      0.09     2.33     2.67 1.00     3846     2901
## 
## Samples were drawn using sampling(NUTS). 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).
tibble(m6_k = m6$criteria$loo$diagnostics$pareto_k) %>%
  ggplot(aes(x=m6_k)) +
  geom_vline(xintercept=.5, linetype=2) +
  stat_dots()

#saveRDS(m6, "Z:/Analyses/LWL_30mt_after_01_10_19/Subgroup_Analyses/m6.Rds")
summary(m6)
##  Family: beta 
##   Links: mu = logit; phi = identity 
## Formula: Prop2 ~ Median_Initial.c100 + Vocab.c100 + First_Instance + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + logfreq.c + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: high_only (Number of observations: 1722) 
## Samples: 4 chains, each with iter = 2000; warmup = 1000; thin = 1;
##          total post-warmup samples = 4000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 52) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.18      0.07     0.03     0.30 1.01      439
## sd(Median_Initial.c100)     0.36      0.27     0.01     0.99 1.00     1587
## sd(First_Instance)          0.06      0.05     0.00     0.17 1.00     1698
## sd(logfreq.c)               0.07      0.05     0.00     0.17 1.01      877
## sd(TargetProp)              0.16      0.11     0.01     0.41 1.01      391
## sd(Pre_Onset_Prop)          0.11      0.08     0.00     0.31 1.00      812
## sd(Duration.c100)           0.03      0.02     0.00     0.07 1.00     1978
## sd(AoA.c100)                1.34      0.98     0.06     3.61 1.00     1410
##                         Tail_ESS
## sd(Intercept)                573
## sd(Median_Initial.c100)     1639
## sd(First_Instance)          1903
## sd(logfreq.c)               1182
## sd(TargetProp)              1127
## sd(Pre_Onset_Prop)          1582
## sd(Duration.c100)           2148
## sd(AoA.c100)                1475
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.06      0.04     0.00     0.16 1.00     1772     2284
## sd(Vocab.c100)         0.10      0.06     0.01     0.24 1.00     1183     1785
## sd(First_Instance)     0.10      0.07     0.01     0.25 1.00     1189     1428
## sd(Pre_Onset_Prop)     0.08      0.06     0.00     0.23 1.00     1868     2197
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept              -0.96      0.28    -1.53    -0.40 1.00     2397     2907
## Median_Initial.c100    -0.34      0.41    -1.16     0.48 1.00     2333     2254
## Vocab.c100              0.06      0.11    -0.15     0.28 1.00     2577     2668
## First_Instance          0.11      0.06    -0.00     0.24 1.00     4046     3137
## logfreq.c100            3.41      5.29    -6.67    14.16 1.00     2407     2297
## TargetProp              2.42      0.50     1.44     3.44 1.00     2243     2692
## Pre_Onset_Prop          1.38      0.14     1.11     1.66 1.00     4199     2960
## Duration.c100          -0.00      0.04    -0.08     0.07 1.00     2194     2528
## AoA.c100                0.24      1.74    -3.19     3.75 1.00     2178     2011
## 
## Family Specific Parameters: 
##     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## phi     2.49      0.09     2.33     2.67 1.00     3846     2901
## 
## Samples were drawn using sampling(NUTS). 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).
hypothesis(m6, "Median_Initial.c100 < 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... < 0    -0.34      0.41       -1     0.34       4.04
##   Post.Prob Star
## 1       0.8     
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.
m7 <- brm(Prop2 ~ Median_Initial.c100 + Vocab.c100 + First_Instance + logfreq.c100  + First_Instance + TargetProp + Pre_Onset_Prop  + Duration.c100 + AoA.c100+ (1 + Median_Initial.c100 +First_Instance  + logfreq.c100  + TargetProp + Pre_Onset_Prop  + Duration.c100+ AoA.c100|| ParticipantName) + (1 +  Vocab.c100 +First_Instance + Pre_Onset_Prop  || Target),  family=Beta("logit", "log"),prior=prior(student_t(5,0,2), class=sd),  data=low_only, chains=4, file="Supp2/m7", iter=2000, cores=8, save_all_pars=TRUE)

m7 <- add_criterion(m7, "loo")
## Automatically saving the model object in 'Supp2/m7.rds'
summary(m7)
##  Family: beta 
##   Links: mu = logit; phi = identity 
## Formula: Prop2 ~ Median_Initial.c100 + Vocab.c100 + First_Instance + logfreq.c100 + First_Instance + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 + (1 + Median_Initial.c100 + First_Instance + logfreq.c100 + TargetProp + Pre_Onset_Prop + Duration.c100 + AoA.c100 || ParticipantName) + (1 + Vocab.c100 + First_Instance + Pre_Onset_Prop || Target) 
##    Data: low_only (Number of observations: 1654) 
## Samples: 4 chains, each with iter = 2000; warmup = 1000; thin = 1;
##          total post-warmup samples = 4000
## 
## Group-Level Effects: 
## ~ParticipantName (Number of levels: 48) 
##                         Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## sd(Intercept)               0.19      0.07     0.03     0.31 1.01      584
## sd(Median_Initial.c100)     0.53      0.35     0.02     1.31 1.00     1363
## sd(First_Instance)          0.15      0.08     0.01     0.31 1.00      938
## sd(logfreq.c100)            1.83      1.62     0.05     5.99 1.00     2383
## sd(TargetProp)              0.17      0.12     0.01     0.42 1.01      621
## sd(Pre_Onset_Prop)          0.13      0.09     0.01     0.33 1.00      843
## sd(Duration.c100)           0.03      0.02     0.00     0.09 1.00     2374
## sd(AoA.c100)                1.30      0.96     0.05     3.56 1.00     1786
##                         Tail_ESS
## sd(Intercept)                595
## sd(Median_Initial.c100)     1958
## sd(First_Instance)          1377
## sd(logfreq.c100)            1408
## sd(TargetProp)              1306
## sd(Pre_Onset_Prop)          1821
## sd(Duration.c100)           1836
## sd(AoA.c100)                2002
## 
## ~Target (Number of levels: 18) 
##                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)          0.10      0.07     0.01     0.25 1.00     1007     1489
## sd(Vocab.c100)         0.03      0.03     0.00     0.09 1.00     2458     2333
## sd(First_Instance)     0.11      0.07     0.01     0.25 1.00     1206     1504
## sd(Pre_Onset_Prop)     0.17      0.11     0.01     0.41 1.00     1044     1458
## 
## Population-Level Effects: 
##                     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## Intercept              -0.83      0.34    -1.56    -0.16 1.00     2262     2243
## Median_Initial.c100    -0.77      0.50    -1.76     0.23 1.00     2818     2869
## Vocab.c100             -0.01      0.05    -0.11     0.09 1.00     3122     2820
## First_Instance         -0.04      0.07    -0.18     0.09 1.00     3788     2888
## logfreq.c100           -0.94      6.04   -13.15    10.81 1.00     2475     2704
## TargetProp              2.45      0.60     1.31     3.71 1.00     2156     2585
## Pre_Onset_Prop          1.28      0.14     0.99     1.55 1.00     4241     2909
## Duration.c100           0.01      0.05    -0.08     0.10 1.00     2359     2310
## AoA.c100               -1.86      2.09    -6.16     2.20 1.00     2356     2460
## 
## Family Specific Parameters: 
##     Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## phi     2.50      0.09     2.33     2.68 1.00     4717     2827
## 
## Samples were drawn using sampling(NUTS). 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).
tibble(m7_k = m7$criteria$loo$diagnostics$pareto_k) %>%
  ggplot(aes(x=m7_k)) +
  geom_vline(xintercept=.5, linetype=2) +
  stat_dots()

hypothesis(m7, "Median_Initial.c100 < 0")
## Hypothesis Tests for class b:
##                 Hypothesis Estimate Est.Error CI.Lower CI.Upper Evid.Ratio
## 1 (Median_Initial.c... < 0    -0.77       0.5    -1.58     0.04      15.46
##   Post.Prob Star
## 1      0.94     
## ---
## 'CI': 90%-CI for one-sided and 95%-CI for two-sided hypotheses.
## '*': For one-sided hypotheses, the posterior probability exceeds 95%;
## for two-sided hypotheses, the value tested against lies outside the 95%-CI.
## Posterior probabilities of point hypotheses assume equal prior probabilities.