##### Potsdam Mind Research Repository ###### ## This script is part of the publication package for the article: # Hohenstein, S., & Kliegl, R. (2013). # Semantic preview benefit during reading. # Journal of Experimental Psychology: Learning, Memory, and Cognition. # http://psycnet.apa.org/doi/10.1037/a0033670 # Sven Hohenstein, 2013 ######## Generate statistics and graphs for Experiment 3 ######### rm(list=ls()) # packages library(lme4) library(ggplot2) library(glmmADMB) # functions source("remef.v0.6.10.R") ##### Analyses and Plots ###### #### 1) Target ### Fixation durations # load data b2 <- readRDS("Exp3.rds") ## main effects # Gaze duration summary(mod1_gd <- lmer(b2, formula = log(tar.GD) ~ (Crel + Csem + Cnonw) * ContN + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) # First-fixation duration summary(mod1_ffd <- lmer(b2, formula = log(tar.FFD) ~ (Crel + Csem + Cnonw) * ContN + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) # Single-fixation duration summary(mod1_sfd <- lmer(b2, formula = log(tar.SFD) ~ (Crel + Csem + Cnonw) * ContN + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) ## influence of distance to pretarget # Gaze duration summary(mod_gd_ls <- lmer(b2, formula = log(tar.GD) ~ (Crel + Csem + Cnonw) * ContN * scale(distLast, scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) # First-fixation duration summary(mod_ffd_ls <- lmer(b2, formula = log(tar.FFD) ~ (Crel + Csem + Cnonw) * ContN * scale(distLast, scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) # Single-fixation duration summary(mod_sfd_ls <- lmer(b2, formula = log(tar.SFD) ~ (Crel + Csem + Cnonw) * ContN * scale(distLast, scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) ## Plot (GD) # remove random effects b2$DV_mod_gd_ls <- remef(mod_gd_ls, fix = "ContN", grouping = TRUE, ran = 'all') ybreaks <- seq(180, 320, 20) xbreaks <- seq(1, 8, 1) p <- ggplot(b2[b2$distLast %in% 1:7,], aes(y = DV_mod_gd_ls, x = distLast, linetype=prime, shape=prime, colour = prime) ) p <- p + stat_summary(fun.y = mean, geom = "point", size = 2.5) p <- p + stat_summary(fun.data = "mean_cl_normal", mult = 1, geom = "errorbar", width = 0.2, linetype = 1, show_guide = FALSE) p <- p + scale_y_continuous(name="Target gaze duration [ms]", breaks = log(ybreaks), labels = as.character(ybreaks)) p <- p + scale_linetype_manual("Preview", guide = guide_legend(keywidth = 2), values = c(4,1,2,3)) p <- p + scale_shape_manual("Preview", values = c(15,16,17,18)) p <- p + stat_smooth(method = "lm", formula = y ~ poly(x,2), aes(group = prime), size = 1.2, se = FALSE) p <- p + coord_cartesian(ylim = log(c(min(ybreaks), max(ybreaks)))) p <- p + scale_x_reverse(name = "Launch-site distance [characters]", breaks = xbreaks, labels = as.character(xbreaks)) p <- p + theme_bw() p <- p + theme(legend.position = "top") p <- p + scale_colour_manual("Preview", values = c("darkgrey", "black", "black", "darkgrey")) p ## influence of pretarget viewing time # Gaze duration summary(mod_gd_pt <- lmer(b2, formula = log(tar.GD) ~ (Crel + Csem + Cnonw) * ContN * scale(log(pretar.GD), scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) summary(lmer(b2, formula = log(tar.GD) ~ (Crel + Csem + Cnonw) * ContN * scale(log(pretar.FFD), scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) summary(lmer(b2, formula = log(tar.GD) ~ (Crel + Csem + Cnonw) * ContN * scale(log(pretar.SFD), scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) # First-fixation duration summary(lmer(b2, formula = log(tar.FFD) ~ (Crel + Csem + Cnonw) * ContN * scale(log(pretar.GD), scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) summary(lmer(b2, formula = log(tar.FFD) ~ (Crel + Csem + Cnonw) * ContN * scale(log(pretar.FFD), scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) summary(lmer(b2, formula = log(tar.FFD) ~ (Crel + Csem + Cnonw) * ContN * scale(log(pretar.SFD), scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) # Single-fixation duration summary(lmer(b2, formula = log(tar.SFD) ~ (Crel + Csem + Cnonw) * ContN * scale(log(pretar.GD), scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) summary(lmer(b2, formula = log(tar.SFD) ~ (Crel + Csem + Cnonw) * ContN * scale(log(pretar.FFD), scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) summary(lmer(b2, formula = log(tar.SFD) ~ (Crel + Csem + Cnonw) * ContN * scale(log(pretar.SFD), scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) ## influence of display-change recognition rate # Gaze duration summary(mod_gd_dca <- lmer(b2, formula = log(tar.GD) ~ (Crel + Csem + Cnonw) * ContN * scale(percent, scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) # First-fixation duration summary(lmer(b2, formula = log(tar.FFD) ~ (Crel + Csem + Cnonw) * ContN * scale(percent, scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) # Single-fixation duration summary(lmer(b2, formula = log(tar.SFD) ~ (Crel + Csem + Cnonw) * ContN * scale(percent, scale = FALSE) + (1 + Crel + Csem | sn ) + ( 1 + Crel | id ))) ## Plot (GD) # remove random effects mod_dc <- lmer(data=b2.rs, formula = as.formula( paste( mod.tar.gd, paste( dc.vars, collapse = " + " ), sep = " + " ) )) dat_dc <- b2.rs[!is.na(b2.rs$percent), ] b2$DV_mod_gd_dca[!is.na(b2$percent)] <- remef(mod_gd_dca, keep = FALSE, fix = "ContN", grouping = TRUE, ran = 'all') # remove random effects and effects associated with contrast ybreaks = seq(220, 340, 20) xbreaks = seq(0, 80, 20) p <- ggplot(b2, aes(y = DV_mod_gd_dca, x = percent, linetype=prime, shape=prime) ) p <- p + scale_y_continuous(name="Target gaze duration [ms]", breaks = log(ybreaks), labels = as.character(ybreaks)) p <- p + scale_linetype_manual("Preview", guide = guide_legend(keywidth = 2.5), values = c(4,1,2,3)) p <- p + scale_shape_manual("Preview", values = c(15,16,17,18)) p <- p + stat_smooth(method = "lm", formula = y ~ poly(x,1), aes(group = prime), size = 1.2, se = TRUE, colour = "black", show_guide = TRUE) # the legend p <- p + scale_x_continuous(name = "Proportion of trials in which display changes were detected", breaks = xbreaks, labels = paste(xbreaks, "%")) p <- p + theme_bw() p <- p + theme(legend.position = "top") p <- p + geom_rug(aes(y = NULL), linetype = 1, show_guide = FALSE, data = b2[!duplicated(b2$id), ]) p ### Other variables ## Target landing position summary(lmer(b2, formula = o ~ (Crel + Csem + Cnonw) * ContN + ( 1 | sn ) + ( 1 | id ) + ( 0 + Cnonw | id ))) ## Target refixation probability summary(glmmadmb(b2, formula = as.integer(refix) ~ (Crel + Csem + Cnonw) * ContN + ( 1 | sn ) + ( 1 | id ), family = "binomial", link = "logit")) #### Pretarget ## Fixation duration # GD summary(lmer(b2, formula = log(pretar.GD) ~ (Crel + Csem + Cnonw) * ContN + ( 1 | sn ) + ( 1 | id ))) # FFD summary(lmer(b2, formula = log(pretar.FFD) ~ (Crel + Csem + Cnonw) * ContN + ( 1 | sn ) + ( 1 | id ))) # SFD summary(lmer(b2, formula = log(pretar.SFD) ~ (Crel + Csem + Cnonw) * ContN + ( 1 | sn ) + ( 1 | id ))) ### Target skipping # load data b7 <- readRDS("Exp3_skip.rds") ## main effects summary(glmmadmb(b7, formula = as.integer(value) ~ (Crel + Csem + Cnonw) * ContN + ( 1 | sn ) + ( 1 | id ), family = "binomial", link = "logit"))