Looking at the effect of electronically-delivered parenting interventions on parent-child interactions. Parents in the experimental condition viewed a video (designed for a parenting app) demonstrating an activity they could do with their child. Parents in the control condition did not view a video. Both groups of parents were asked to play with their child for 3 minutes with a set of props that matched the video demonstration they had seen. Children were 6-24 months of age. There were 6 videos total (2 per age group). Assignment to videos/sets of toys was counterbalanced within age groups. Parents also completed the Parenting Attitudes Questionnaire. Videos of the play sessions were coded for bids for joint attention, episodes of passive joint attention, and episodes of coordinated joint attention.

1 Data preprocessing

Preliminaries.

## Loading tidyverse: ggplot2
## Loading tidyverse: tibble
## Loading tidyverse: tidyr
## Loading tidyverse: readr
## Loading tidyverse: purrr
## Loading tidyverse: dplyr
## Conflicts with tidy packages ----------------------------------------------
## filter(): dplyr, stats
## lag():    dplyr, stats
## Loading required package: Matrix
## 
## Attaching package: 'Matrix'
## The following object is masked from 'package:tidyr':
## 
##     expand
## 
## Attaching package: 'lmerTest'
## The following object is masked from 'package:lme4':
## 
##     lmer
## The following object is masked from 'package:stats':
## 
##     step
## 
## Attaching package: 'langcog'
## The following object is masked from 'package:base':
## 
##     scale
## Loading required package: lattice
## Loading required package: survival
## Loading required package: Formula
## 
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:xtable':
## 
##     label, label<-
## The following objects are masked from 'package:dplyr':
## 
##     combine, src, summarize
## The following objects are masked from 'package:base':
## 
##     format.pval, round.POSIXt, trunc.POSIXt, units

Read in files and consolidate to the same directory.

d.raw <- data.frame()
files <- dir("data/")

for (f in files) {
  jf <- paste("data/",f,sep="")
  jd <- read.csv(jf)
  
  SID <- str_replace(f, ".csv", "")
  line <- jd$JointAttention.ordinal
  phase_onset <- jd$JointAttention.onset
  phase_offset <- jd$JointAttention.offset
  pja <- jd$JointAttention.pJA
  cja <- jd$JointAttention.cJA
  bid <- jd$JointAttention.bids
  
  id <- data.frame(SID = SID,
                   line = line,
                   phase_onset = phase_onset,
                   phase_offset = phase_offset, 
                   pja = pja,
                   cja = cja,
                   bid = bid)
  
  l_pja <- id%>%
    mutate(phase_length = phase_offset - phase_onset)%>%
    filter(pja == 1)%>%
    group_by(SID, pja)%>%
    summarise(pja_length = sum(phase_length))%>%
    select(-pja)
  
  l_cja <- id%>%
    mutate(phase_length = phase_offset - phase_onset)%>%
    filter(cja == 1)%>%
    group_by(SID, cja)%>%
    summarise(cja_length = sum(phase_length))%>%
    select(-cja)
    
  c_pja <- id%>%
    group_by(SID)%>%
    summarise(pja = sum(pja))
  
  c_cja <- id%>%
    group_by(SID)%>%
    summarise(cja = sum(cja)) 
  
  c_bids <- id%>%
    group_by(SID)%>%
    summarise(bids = sum(bid)) 

  sd <- c_bids%>%
    left_join(c_cja)%>%
    left_join(c_pja)%>%
    left_join(c_cja)%>%
    left_join(l_pja)%>%
    left_join(l_cja)
    
sd$pja_length[is.na(sd$pja_length)] <- 0
sd$cja_length[is.na(sd$cja_length)] <- 0

sd <- sd %>%
  mutate(total_ja = pja + cja)%>%
  mutate(total_lja = pja_length + cja_length)

d.raw <- bind_rows(d.raw, sd)
}

Read in trial info and demographics.

conditions <- read.csv("conditions.csv")

load("../paq/paq_demo.RData")
load("../paq/obs_demo.RData")

ids <- ids%>%
  mutate(SID = sid)%>%
  select(-sid)

demo <- demo%>%
  mutate(SID = sid)%>%
  select(-sid)%>%
  mutate(age_months = age * 12)

demo$age_group[demo$age_months < 12] <- "6"
demo$age_group[demo$age_months >= 12 & demo$age_months < 18 ] <- "12"
demo$age_group[demo$age_months >= 18] <- "18"

d <- d.raw %>%
  left_join(conditions)%>%
  mutate(bids_tot = bids + cja + pja)%>%
  left_join(demo)%>%
  left_join(ids)%>%
  select(-sid)

2 Demographics

demos <- conditions%>%
  left_join(demo)

demos$parent_ed[demos$parent_ed == 1] <- 8
demos$parent_ed[demos$parent_ed == 2] <- 12
demos$parent_ed[demos$parent_ed == 3] <- 14
demos$parent_ed[demos$parent_ed == 4] <- 18
demos$parent_ed[demos$parent_ed == 5] <- 20
demos$parent_ed[demos$parent_ed == 6] <- 22

#child gender
table(demos$Condition, demos$gender)
##      
##           F  M
##   con  0 20 10
##   exp  0 22  8
#ethnicity
table(demos$Condition, demos$ethnicity)
##      
##          asian asian/white black/ white/ other black/african american
##   con  1     4           4                   0                      1
##   exp  3     7           5                   1                      0
##      
##       Black/african american black/african american/white black/white
##   con                      1                            0           0
##   exp                      0                            0           0
##      
##       decline hispanic mexican american mexican/portuguese middle eastern
##   con       1        1                1                  1              0
##   exp       0        0                0                  0              1
##      
##       other white white/asian white/asian/pacific islander white/filipino
##   con     1    13           0                            0              1
##   exp     1    12           0                            0              0
##      
##       white/hispanic white/mexican
##   con              0             0
##   exp              0             0
#years of education
table(demos$Condition, demos$parent_ed)
##      
##       12 14 18 20 22
##   con  4  3 12  2  9
##   exp  1  4  4  0 21

3 Reliability

Import reliability coder’s data (20 participants were coded for reliability).

d.raw_rel <- data.frame()
files <- dir("rel_data/")

for (f in files) {
  jf <- paste("rel_data/",f,sep="")
  jd <- read.csv(jf)
  
  SID <- str_replace(f, ".csv", "")
  line <- jd$JointAttention.ordinal
  phase_onset <- jd$JointAttention.onset
  phase_offset <- jd$JointAttention.offset
  pja <- jd$JointAttention.pJA
  cja <- jd$JointAttention.cJA
  bid <- jd$JointAttention.bids
  
  id <- data.frame(SID = SID,
                   line = line,
                   phase_onset = phase_onset,
                   phase_offset = phase_offset, 
                   pja = pja,
                   cja = cja,
                   bid = bid)
  
  l_pja <- id%>%
    mutate(phase_length = phase_offset - phase_onset)%>%
    filter(pja == 1)%>%
    group_by(SID, pja)%>%
    summarise(pja_length = sum(phase_length))%>%
    select(-pja)
  
  l_cja <- id%>%
    mutate(phase_length = phase_offset - phase_onset)%>%
    filter(cja == 1)%>%
    group_by(SID, cja)%>%
    summarise(cja_length = sum(phase_length))%>%
    select(-cja)
    
  c_pja <- id%>%
    group_by(SID)%>%
    summarise(pja = sum(pja))
  
  c_cja <- id%>%
    group_by(SID)%>%
    summarise(cja = sum(cja)) 
  
  c_bids <- id%>%
    group_by(SID)%>%
    summarise(bids = sum(bid)) 

  sd <- c_bids%>%
    left_join(c_cja)%>%
    left_join(c_pja)%>%
    left_join(c_cja)%>%
    left_join(l_pja)%>%
    left_join(l_cja)
    
sd$pja_length[is.na(sd$pja_length)] <- 0
sd$cja_length[is.na(sd$cja_length)] <- 0

sd <- sd %>%
  mutate(total_ja = pja + cja)%>%
  mutate(total_lja = pja_length + cja_length)

d.raw_rel <- bind_rows(d.raw_rel, sd)
}

Reliability.

d.raw_rel <- d.raw_rel%>%
  mutate(bids_rel = bids, pja_rel = pja, cja_rel = cja, l_pja_rel = pja_length, l_cja_rel = cja_length)%>%
  select(SID, bids_rel, pja_rel, cja_rel, l_cja_rel, l_pja_rel)

bids_mat <- d.raw_rel%>%
  left_join(d.raw)%>%
  select(bids, bids_rel)

psych::ICC(bids_mat, missing = FALSE, alpha = 0.05)
## Call: psych::ICC(x = bids_mat, missing = FALSE, alpha = 0.05)
## 
## Intraclass correlation coefficients 
##                          type  ICC   F df1 df2       p lower bound
## Single_raters_absolute   ICC1 0.80 9.0  19  20 4.3e-06        0.57
## Single_random_raters     ICC2 0.80 8.7  19  19 8.9e-06        0.56
## Single_fixed_raters      ICC3 0.79 8.7  19  19 8.9e-06        0.55
## Average_raters_absolute ICC1k 0.89 9.0  19  20 4.3e-06        0.72
## Average_random_raters   ICC2k 0.89 8.7  19  19 8.9e-06        0.72
## Average_fixed_raters    ICC3k 0.88 8.7  19  19 8.9e-06        0.71
##                         upper bound
## Single_raters_absolute         0.92
## Single_random_raters           0.92
## Single_fixed_raters            0.91
## Average_raters_absolute        0.96
## Average_random_raters          0.96
## Average_fixed_raters           0.95
## 
##  Number of subjects = 20     Number of Judges =  2
pja_mat <- d.raw_rel%>%
  left_join(d.raw)%>%
  select(pja, pja_rel)

psych::ICC(pja_mat, missing = FALSE, alpha = 0.05)
## Call: psych::ICC(x = pja_mat, missing = FALSE, alpha = 0.05)
## 
## Intraclass correlation coefficients 
##                          type  ICC   F df1 df2    p lower bound
## Single_raters_absolute   ICC1 0.20 1.5  19  20 0.19       -0.25
## Single_random_raters     ICC2 0.18 1.4  19  19 0.23       -0.30
## Single_fixed_raters      ICC3 0.17 1.4  19  19 0.23       -0.28
## Average_raters_absolute ICC1k 0.33 1.5  19  20 0.19       -0.67
## Average_random_raters   ICC2k 0.30 1.4  19  19 0.23       -0.85
## Average_fixed_raters    ICC3k 0.29 1.4  19  19 0.23       -0.78
##                         upper bound
## Single_raters_absolute         0.58
## Single_random_raters           0.57
## Single_fixed_raters            0.56
## Average_raters_absolute        0.73
## Average_random_raters          0.73
## Average_fixed_raters           0.72
## 
##  Number of subjects = 20     Number of Judges =  2
cja_mat <- d.raw_rel%>%
  left_join(d.raw)%>%
  select(cja, cja_rel)

psych::ICC(cja_mat, missing = FALSE, alpha = 0.05)
## Call: psych::ICC(x = cja_mat, missing = FALSE, alpha = 0.05)
## 
## Intraclass correlation coefficients 
##                          type  ICC   F df1 df2       p lower bound
## Single_raters_absolute   ICC1 0.66 4.9  19  20 0.00046        0.32
## Single_random_raters     ICC2 0.66 4.6  19  19 0.00080        0.30
## Single_fixed_raters      ICC3 0.64 4.6  19  19 0.00080        0.29
## Average_raters_absolute ICC1k 0.79 4.9  19  20 0.00046        0.49
## Average_random_raters   ICC2k 0.79 4.6  19  19 0.00080        0.47
## Average_fixed_raters    ICC3k 0.78 4.6  19  19 0.00080        0.45
##                         upper bound
## Single_raters_absolute         0.85
## Single_random_raters           0.85
## Single_fixed_raters            0.84
## Average_raters_absolute        0.92
## Average_random_raters          0.92
## Average_fixed_raters           0.91
## 
##  Number of subjects = 20     Number of Judges =  2
l_pja_mat <- d.raw_rel%>%
  left_join(d.raw)%>%
  select(pja_length, l_pja_rel)

psych::ICC(l_pja_mat, missing = FALSE, alpha = 0.05)
## Call: psych::ICC(x = l_pja_mat, missing = FALSE, alpha = 0.05)
## 
## Intraclass correlation coefficients 
##                          type  ICC   F df1 df2    p lower bound
## Single_raters_absolute   ICC1 0.24 1.6  19  20 0.14       -0.21
## Single_random_raters     ICC2 0.24 1.6  19  19 0.15       -0.22
## Single_fixed_raters      ICC3 0.23 1.6  19  19 0.15       -0.22
## Average_raters_absolute ICC1k 0.38 1.6  19  20 0.14       -0.53
## Average_random_raters   ICC2k 0.38 1.6  19  19 0.15       -0.56
## Average_fixed_raters    ICC3k 0.38 1.6  19  19 0.15       -0.57
##                         upper bound
## Single_raters_absolute         0.61
## Single_random_raters           0.61
## Single_fixed_raters            0.61
## Average_raters_absolute        0.75
## Average_random_raters          0.76
## Average_fixed_raters           0.75
## 
##  Number of subjects = 20     Number of Judges =  2
l_cja_mat <- d.raw_rel%>%
  left_join(d.raw)%>%
  select(cja_length, l_cja_rel)

psych::ICC(l_cja_mat, missing = FALSE, alpha = 0.05)
## Call: psych::ICC(x = l_cja_mat, missing = FALSE, alpha = 0.05)
## 
## Intraclass correlation coefficients 
##                          type  ICC   F df1 df2      p lower bound
## Single_raters_absolute   ICC1 0.62 4.3  19  20 0.0011        0.27
## Single_random_raters     ICC2 0.62 4.1  19  19 0.0018        0.24
## Single_fixed_raters      ICC3 0.61 4.1  19  19 0.0018        0.23
## Average_raters_absolute ICC1k 0.77 4.3  19  20 0.0011        0.42
## Average_random_raters   ICC2k 0.76 4.1  19  19 0.0018        0.39
## Average_fixed_raters    ICC3k 0.75 4.1  19  19 0.0018        0.38
##                         upper bound
## Single_raters_absolute         0.83
## Single_random_raters           0.83
## Single_fixed_raters            0.82
## Average_raters_absolute        0.91
## Average_random_raters          0.91
## Average_fixed_raters           0.90
## 
##  Number of subjects = 20     Number of Judges =  2

Inter-rater reliability is very high for number of bids, high for number of episodes of coordinated joint attention, but there is less agreement for episodes passive joint attention.

4 Plots

Total number of bids (successful and unsuccessful)

ms_bids <- d %>%
  group_by(Condition) %>%
  multi_boot_standard(col = "bids_tot") 

ggplot(ms_bids, aes(x = Condition, y = mean, fill = Condition)) + 
  geom_bar(stat="identity") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Total bids for Joint Attention") +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

Episodes of passive joint attention.

ms_pja <- d %>%
  group_by(Condition) %>%
  multi_boot_standard(col = "pja") 

ggplot(ms_pja, aes(x = Condition, y = mean, fill = Condition)) + 
  geom_bar(stat="identity") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Episodes of Passive Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

Episodes of coordinated joint attention

ms_cja <- d %>%
  group_by(Condition) %>%
  multi_boot_standard(col = "cja") 

ggplot(ms_cja, aes(x = Condition, y = mean, fill = Condition)) + 
  geom_bar(stat="identity") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Episodes of Coordinated Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

Total duration of passive joint attention.

ms_lpja <- d %>%
  filter(!is.na(Condition))%>%
  group_by(Condition) %>%
  multi_boot_standard(col = "pja_length") 

ggplot(ms_lpja, aes(x = Condition, y = mean, fill = Condition)) + 
  geom_bar(stat="identity") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Total Duration Passive Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

Total duration of coordinated joint attention.

ms_lcja <- d %>%
  filter(!is.na(Condition))%>%
  group_by(Condition) %>%
  multi_boot_standard(col = "cja_length") 

ggplot(ms_lcja, aes(x = Condition, y = mean, fill = Condition)) + 
  geom_bar(stat="identity") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Total Duration Coordinated Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

4.1 Demographics

4.1.1 Child gender

Total bids by gender.

# total bids
ms_bids <- d %>%
  group_by(Condition, gender) %>%
  multi_boot_standard(col = "bids_tot") 

ggplot(ms_bids, aes(x = Condition, y = mean, fill=gender)) + 
  geom_bar(stat="identity", position = "dodge") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Total bids for Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

Total duration of passive joint attention by gender

ms_lpja <- d %>%
  filter(!is.na(Condition))%>%
  group_by(Condition, gender) %>%
  multi_boot_standard(col = "pja_length") 

ggplot(ms_lpja, aes(x = Condition, y = mean, fill=gender)) + 
  geom_bar(stat="identity", position = "dodge") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Total Duration Passive Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

Total duration of coordinated joint attention by gender

ms_lcja <- d %>%
  filter(!is.na(Condition))%>%
  group_by(Condition, gender) %>%
  multi_boot_standard(col = "cja_length") 

ggplot(ms_lcja, aes(x = Condition, y = mean, fill=gender)) + 
  geom_bar(stat="identity", position = "dodge") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Total Duration Coordinated Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

4.1.2 Child age

Children were separated into 3 age groups: 6-12 months, 12-18 months, and 18-24 months.

Total bids by age.

# total bids
ms_bids <- d %>%
  group_by(Condition, age_group) %>%
  multi_boot_standard(col = "bids_tot") 

ms_bids$age_group <- factor(ms_bids$age_group , levels = c("6","12", "18"))

ggplot(ms_bids, aes(x = Condition, y = mean, fill=age_group)) + 
  geom_bar(stat="identity", position= "dodge") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Total bids for Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

Total duration of passive joint attention by age

ms_lpja <- d %>%
  filter(!is.na(Condition))%>%
  group_by(Condition, age_group) %>%
  multi_boot_standard(col = "pja_length") 

ms_lpja$age_group <- factor(ms_lpja$age_group , levels = c("6","12", "18"))

ggplot(ms_lpja, aes(x = Condition, y = mean, fill = age_group)) + 
  geom_bar(stat="identity", position = "dodge") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Total Duration Passive Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

Total duration of coordinated joint attention by age

ms_lcja <- d %>%
  filter(!is.na(Condition))%>%
  group_by(Condition, age_group) %>%
  multi_boot_standard(col = "cja_length") 

ms_lcja$age_group <- factor(ms_lcja$age_group , levels = c("6","12", "18"))

ggplot(ms_lcja, aes(x = Condition, y = mean, fill = age_group)) + 
  geom_bar(stat="identity", position = "dodge") + 
  geom_linerange(aes(ymin = ci_lower, ymax = ci_upper), 
             position = position_dodge(width = .9))+
  xlab("Condition") + 
  ylab("Total Duration Coordinated Joint Attention")  +
  langcog::scale_colour_solarized()  +
  ggthemes::theme_few() 

4.1.3 Parenting attitudes and education

Do PAQ scores predict the number of bids for joint attention by parents?

d_plot <- d %>%
  gather("subscale","score", AA:RR)

ggplot(d_plot, aes(x = score, y = bids_tot, col = subscale)) +
  geom_jitter() + 
  xlim(0,6) +
  geom_smooth(method="lm", se=FALSE)  + 
  facet_wrap(~Condition)+
  ggthemes::theme_few() +
  langcog::scale_colour_solarized() 

Does parent education predict the number of bids for joint attention by parents?

d_plot <- d %>%
  gather("subscale","score", AA:RR)

ggplot(d_plot, aes(x = parent_ed, y = bids_tot)) +
  geom_jitter() + 
  xlim(0,6) +
  geom_smooth(method="lm", se=FALSE)  + 
  facet_wrap(~Condition)+
  ggthemes::theme_few() +
  langcog::scale_colour_solarized() 

5 Analysis

Is the duration of joint attention correlated with age in months?

cormat <- d %>%
  select(age_months, pja_length, cja_length, total_lja)
rcorr(as.matrix(cormat))
##            age_months pja_length cja_length total_lja
## age_months       1.00      -0.13       0.01     -0.10
## pja_length      -0.13       1.00      -0.52      0.20
## cja_length       0.01      -0.52       1.00      0.73
## total_lja       -0.10       0.20       0.73      1.00
## 
## n= 60 
## 
## 
## P
##            age_months pja_length cja_length total_lja
## age_months            0.3114     0.9539     0.4606   
## pja_length 0.3114                0.0000     0.1325   
## cja_length 0.9539     0.0000                0.0000   
## total_lja  0.4606     0.1325     0.0000

Mixed effects models.

Prepare data.

lmer_data <- d %>%
  filter(!is.na(AA), !is.na(EL), !is.na(RR))%>%
  mutate(Condition = factor(Condition), 
         bids_tot = as.numeric(bids_tot),
         EL = as.numeric(langcog::scale(EL, scale=FALSE)),
         AA = as.numeric(langcog::scale(AA, scale=FALSE)),
         RR = as.numeric(langcog::scale(RR, scale=FALSE)),
         age = as.numeric(langcog::scale(age, scale=FALSE)),
         gender = as.factor(gender),
         Video = as.factor(Video))

Total number of bids

maximal_mod <- lmer(bids_tot ~ Condition *  EL  + Condition * AA + Condition * RR + age + gender + parent_ed +
                           (1| Video), 
                         data = lmer_data)
summary(maximal_mod)
## Linear mixed model fit by REML t-tests use Satterthwaite approximations
##   to degrees of freedom [lmerMod]
## Formula: bids_tot ~ Condition * EL + Condition * AA + Condition * RR +  
##     age + gender + parent_ed + (1 | Video)
##    Data: lmer_data
## 
## REML criterion at convergence: 260
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.05417 -0.68228  0.01915  0.47428  2.14035 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  Video    (Intercept)  0.9151  0.9566  
##  Residual             12.0599  3.4727  
## Number of obs: 54, groups:  Video, 6
## 
## Fixed effects:
##                 Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)     10.17036    2.15328 33.61000   4.723 4.01e-05 ***
## Conditionexp     3.51386    1.19239 40.31000   2.947  0.00531 ** 
## EL               2.19022    2.00945 42.48000   1.090  0.28187    
## AA               1.56335    1.65507 42.96000   0.945  0.35015    
## RR              -0.03157    0.84602 41.38000  -0.037  0.97041    
## age              0.84222    1.47638  6.68000   0.570  0.58703    
## genderM          2.28867    1.15674 41.54000   1.979  0.05452 .  
## parent_ed       -0.15227    0.44646 41.70000  -0.341  0.73478    
## Conditionexp:EL -1.90173    2.48945 42.95000  -0.764  0.44909    
## Conditionexp:AA -2.91173    2.12242 42.87000  -1.372  0.17723    
## Conditionexp:RR  1.22631    1.22799 40.94000   0.999  0.32384    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Cndtnx EL     AA     RR     age    gendrM prnt_d Cnd:EL
## Conditionxp  0.004                                                        
## EL          -0.027  0.362                                                 
## AA          -0.299  0.258 -0.095                                          
## RR          -0.269 -0.235 -0.457  0.007                                   
## age          0.121  0.034  0.113 -0.096 -0.007                            
## genderM     -0.090  0.046 -0.083  0.169  0.155 -0.134                     
## parent_ed   -0.877 -0.357 -0.147  0.114  0.344 -0.109 -0.088              
## Condtnxp:EL -0.105 -0.324 -0.848  0.085  0.426 -0.130  0.077  0.263       
## Condtnxp:AA  0.402 -0.111  0.124 -0.823 -0.085  0.154 -0.210 -0.264 -0.339
## Condtnxp:RR  0.064  0.180  0.289  0.018 -0.634 -0.046 -0.040 -0.113 -0.204
##             Cnd:AA
## Conditionxp       
## EL                
## AA                
## RR                
## age               
## genderM           
## parent_ed         
## Condtnxp:EL       
## Condtnxp:AA       
## Condtnxp:RR  0.005

Episodes of coordinated joint attention.

maximal_mod <- lmer(cja ~ Condition *  EL  + Condition * AA + Condition * RR  + age + gender + parent_ed +
                           (1| Video), 
                         data = lmer_data)
summary(maximal_mod)
## Linear mixed model fit by REML t-tests use Satterthwaite approximations
##   to degrees of freedom [lmerMod]
## Formula: cja ~ Condition * EL + Condition * AA + Condition * RR + age +  
##     gender + parent_ed + (1 | Video)
##    Data: lmer_data
## 
## REML criterion at convergence: 237.1
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -1.79034 -0.57112 -0.04321  0.51055  2.42451 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  Video    (Intercept) 0.4427   0.6654  
##  Residual             7.1402   2.6721  
## Number of obs: 54, groups:  Video, 6
## 
## Fixed effects:
##                 Estimate Std. Error      df t value Pr(>|t|)
## (Intercept)       1.3562     1.6421 33.5000   0.826    0.415
## Conditionexp      0.3116     0.9170 40.5200   0.340    0.736
## EL                0.1842     1.5428 42.6000   0.119    0.906
## AA               -0.6909     1.2696 42.9900  -0.544    0.589
## RR                0.8296     0.6502 41.5800   1.276    0.209
## age               1.2926     1.1047  6.9400   1.170    0.281
## genderM          -0.2328     0.8889 41.7500  -0.262    0.795
## parent_ed         0.4200     0.3417 41.3400   1.229    0.226
## Conditionexp:EL  -0.3396     1.9084 42.8800  -0.178    0.860
## Conditionexp:AA   0.9842     1.6266 42.7500   0.605    0.548
## Conditionexp:RR  -0.4696     0.9440 41.2000  -0.497    0.621
## 
## Correlation of Fixed Effects:
##             (Intr) Cndtnx EL     AA     RR     age    gendrM prnt_d Cnd:EL
## Conditionxp  0.003                                                        
## EL          -0.027  0.361                                                 
## AA          -0.296  0.260 -0.095                                          
## RR          -0.268 -0.234 -0.456  0.005                                   
## age          0.125  0.041  0.126 -0.102 -0.013                            
## genderM     -0.093  0.046 -0.083  0.170  0.156 -0.141                     
## parent_ed   -0.878 -0.359 -0.147  0.109  0.342 -0.115 -0.086              
## Condtnxp:EL -0.106 -0.324 -0.848  0.087  0.426 -0.141  0.078  0.264       
## Condtnxp:AA  0.399 -0.113  0.123 -0.822 -0.082  0.159 -0.211 -0.259 -0.340
## Condtnxp:RR  0.064  0.179  0.289  0.020 -0.635 -0.045 -0.041 -0.113 -0.203
##             Cnd:AA
## Conditionxp       
## EL                
## AA                
## RR                
## age               
## genderM           
## parent_ed         
## Condtnxp:EL       
## Condtnxp:AA       
## Condtnxp:RR  0.003

Episodes of passive joint attention.

maximal_mod <- lmer(pja ~ Condition *  EL  + Condition * AA + Condition * RR  + age + gender + parent_ed +
                           (1| Video), 
                         data = lmer_data)
summary(maximal_mod)
## Linear mixed model fit by REML t-tests use Satterthwaite approximations
##   to degrees of freedom [lmerMod]
## Formula: pja ~ Condition * EL + Condition * AA + Condition * RR + age +  
##     gender + parent_ed + (1 | Video)
##    Data: lmer_data
## 
## REML criterion at convergence: 225.1
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -1.48520 -0.71680  0.05066  0.52895  2.60949 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  Video    (Intercept) 0.1991   0.4462  
##  Residual             5.4660   2.3379  
## Number of obs: 54, groups:  Video, 6
## 
## Fixed effects:
##                 Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)      5.74376    1.40946 32.34000   4.075 0.000279 ***
## Conditionexp    -0.03461    0.80136 40.70000  -0.043 0.965761    
## EL               0.71070    1.34355 42.76000   0.529 0.599561    
## AA               0.64871    1.10338 42.98000   0.588 0.559654    
## RR              -1.06565    0.56736 41.81000  -1.878 0.067331 .  
## age             -0.09116    0.91181  6.93000  -0.100 0.923193    
## genderM          1.09259    0.77538 42.04000   1.409 0.166158    
## parent_ed       -0.44175    0.29546 40.26000  -1.495 0.142672    
## Conditionexp:EL -0.60047    1.65571 42.54000  -0.363 0.718648    
## Conditionexp:AA -0.97980    1.41056 42.34000  -0.695 0.491090    
## Conditionexp:RR  1.83133    0.82414 41.54000   2.222 0.031778 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Cndtnx EL     AA     RR     age    gendrM prnt_d Cnd:EL
## Conditionxp  0.002                                                        
## EL          -0.027  0.360                                                 
## AA          -0.289  0.265 -0.096                                          
## RR          -0.264 -0.233 -0.456 -0.001                                   
## age          0.134  0.056  0.151 -0.114 -0.025                            
## genderM     -0.101  0.048 -0.083  0.173  0.158 -0.155                     
## parent_ed   -0.880 -0.362 -0.149  0.098  0.337 -0.128 -0.082              
## Condtnxp:EL -0.108 -0.323 -0.847  0.090  0.425 -0.165  0.079  0.267       
## Condtnxp:AA  0.393 -0.117  0.122 -0.821 -0.075  0.171 -0.215 -0.248 -0.343
## Condtnxp:RR  0.063  0.178  0.286  0.025 -0.636 -0.043 -0.042 -0.112 -0.201
##             Cnd:AA
## Conditionxp       
## EL                
## AA                
## RR                
## age               
## genderM           
## parent_ed         
## Condtnxp:EL       
## Condtnxp:AA       
## Condtnxp:RR -0.001

Total duration of passive joint attention.

maximal_mod <- lmer(pja_length ~ Condition *  EL  + Condition * AA + Condition * RR  + age + gender + parent_ed +
                           (1| Video), 
                         data = lmer_data)
summary(maximal_mod)
## Linear mixed model fit by REML t-tests use Satterthwaite approximations
##   to degrees of freedom [lmerMod]
## Formula: pja_length ~ Condition * EL + Condition * AA + Condition * RR +  
##     age + gender + parent_ed + (1 | Video)
##    Data: lmer_data
## 
## REML criterion at convergence: 1027.7
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -1.2657 -0.7103 -0.1369  0.6519  2.5372 
## 
## Random effects:
##  Groups   Name        Variance  Std.Dev.
##  Video    (Intercept)  51951718  7208   
##  Residual             685084718 26174   
## Number of obs: 54, groups:  Video, 6
## 
## Fixed effects:
##                 Estimate Std. Error    df t value Pr(>|t|)    
## (Intercept)        56023      16229    68   3.452 0.000964 ***
## Conditionexp       -3756       8987  3225  -0.418 0.676016    
## EL                 -2579      15145   930  -0.170 0.864823    
## AA                  8184      12474   533   0.656 0.512049    
## RR                 -5489       6376  1950  -0.861 0.389419    
## age                -9188      11126     7  -0.826 0.436549    
## genderM            12284       8718  1780   1.409 0.159001    
## parent_ed          -4498       3365   195  -1.337 0.182842    
## Conditionexp:EL    -3200      18763   374  -0.171 0.864670    
## Conditionexp:AA    -7953      15997   333  -0.497 0.619414    
## Conditionexp:RR    10381       9255  2472   1.122 0.262113    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Cndtnx EL     AA     RR     age    gendrM prnt_d Cnd:EL
## Conditionxp  0.004                                                        
## EL          -0.027  0.362                                                 
## AA          -0.299  0.258 -0.095                                          
## RR          -0.269 -0.235 -0.457  0.007                                   
## age          0.121  0.034  0.113 -0.096 -0.007                            
## genderM     -0.090  0.046 -0.083  0.169  0.155 -0.134                     
## parent_ed   -0.877 -0.357 -0.147  0.114  0.344 -0.109 -0.088              
## Condtnxp:EL -0.105 -0.324 -0.848  0.085  0.426 -0.130  0.077  0.263       
## Condtnxp:AA  0.402 -0.111  0.124 -0.823 -0.085  0.154 -0.210 -0.264 -0.339
## Condtnxp:RR  0.064  0.180  0.289  0.018 -0.634 -0.046 -0.040 -0.113 -0.204
##             Cnd:AA
## Conditionxp       
## EL                
## AA                
## RR                
## age               
## genderM           
## parent_ed         
## Condtnxp:EL       
## Condtnxp:AA       
## Condtnxp:RR  0.005

Total duration of coordinated joint attention.

maximal_mod <- lmer(cja_length ~ Condition *  EL  + Condition * AA + Condition * RR  + age + gender + parent_ed +
                           (1| Video), 
                         data = lmer_data)
summary(maximal_mod)
## Linear mixed model fit by REML ['lmerMod']
## Formula: cja_length ~ Condition * EL + Condition * AA + Condition * RR +  
##     age + gender + parent_ed + (1 | Video)
##    Data: lmer_data
## 
## REML criterion at convergence: 1063
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -1.51487 -0.68595 -0.08384  0.46650  2.27459 
## 
## Random effects:
##  Groups   Name        Variance  Std.Dev.
##  Video    (Intercept) 0.000e+00     0   
##  Residual             1.622e+09 40278   
## Number of obs: 54, groups:  Video, 6
## 
## Fixed effects:
##                 Estimate Std. Error t value
## (Intercept)        16720      23411   0.714
## Conditionexp       -8469      13777  -0.615
## EL                   724      22931   0.032
## AA                 -1491      18756  -0.080
## RR                  7665       9724   0.788
## age                -2400      14158  -0.170
## genderM           -10457      13278  -0.788
## parent_ed           8530       4968   1.717
## Conditionexp:EL    -1359      28025  -0.048
## Conditionexp:AA     7584      23861   0.318
## Conditionexp:RR     1616      14133   0.114
## 
## Correlation of Fixed Effects:
##             (Intr) Cndtnx EL     AA     RR     age    gendrM prnt_d Cnd:EL
## Conditionxp  0.000                                                        
## EL          -0.027  0.356                                                 
## AA          -0.274  0.273 -0.098                                          
## RR          -0.256 -0.231 -0.455 -0.011                                   
## age          0.154  0.081  0.198 -0.137 -0.046                            
## genderM     -0.117  0.050 -0.085  0.179  0.162 -0.179                     
## parent_ed   -0.882 -0.368 -0.151  0.075  0.328 -0.153 -0.073              
## Condtnxp:EL -0.112 -0.322 -0.846  0.098  0.424 -0.210  0.083  0.272       
## Condtnxp:AA  0.378 -0.126  0.118 -0.820 -0.061  0.193 -0.221 -0.224 -0.348
## Condtnxp:RR  0.062  0.175  0.282  0.034 -0.638 -0.041 -0.045 -0.111 -0.198
##             Cnd:AA
## Conditionxp       
## EL                
## AA                
## RR                
## age               
## genderM           
## parent_ed         
## Condtnxp:EL       
## Condtnxp:AA       
## Condtnxp:RR -0.011

6 Conclusions

There is a main effect of condition on total bids for joint attention. Parents in the experimental condition (i.e., those who saw a video demonstrating an activity) made a greater number of bids for joint attention with their child.

There was no effect of condition on the number of episodes of either passive or coordinated joint attention, or the duration of these episodes.

There is a marginal effect of gender on bids for joint attention, with parents of males producing more bids. There is a marginal interaction between RR scores and condition on passive joint attention, such that the experimental condition increased the number of episodes of PJA to a greater extent for people with high RR scores.

While the electronically-delivered parenting advice increased the number of bids for joint attention by parents, it did not significantly effect the number or duration of episodes of joint attention. One possibility is that child variables had a comparatively larger impact on the attainment of joint attention.