datAgg <- datAggVP %>%
group_by(RespDir, Valence, WordGroup) %>%
summarize(nTotal   = n(),
Rt       = mean(rtVP),
sdRt     = sd(rtVP),
seRt     = sdRt/sqrt(nTotal),
perError = mean(perErrorVP),
sdError  = sd(perErrorVP),
seError  = sdError/sqrt(nTotal))
# ANOVA RT analysis
datAggVP       <- as.data.frame(datAggVP)
aovRT_F1       <- ezANOVA(datAggVP, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence, WordGroup), return_aov = TRUE)
aovRT_F1$means <- model.tables(aovRT_F1$aov, type = "mean")
aovRT_F1$ANOVA
aovRT_F1$means
datAggItem     <- as.data.frame(datAggItem)
aovRT_F2       <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovRT_F2$means <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
# Location words only
datAggVPloc       <- datAggVP[datAggVP$WordGroup == "Location", ]
aovRTloc_F1       <- ezANOVA(datAggVPloc, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence ), return_aov = TRUE)
aovRTloc_F1$means <- model.tables(aovRTloc_F1$aov, type = "mean")
aovRTloc_F1$ANOVA
aovRTloc_F1$means
datAggItemLoc      <- datAggItem[datAggItem$WordGroup == "Location", ]
datAggItemLoc$Wort <- factor(datAggItemLoc$Wort)
aovRTloc_F2        <- ezANOVA(datAggItemLoc, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTloc_F2$means  <- model.tables(aovRTloc_F2$aov, type = "mean")
aovRTloc_F2$ANOVA
aovRTloc_F2$means
# Valence words only
datAggVPval       <- datAggVP[datAggVP$WordGroup == "Valence", ]
aovRTval_F1       <- ezANOVA(datAggVPval, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence ), return_aov = TRUE)
aovRTval_F1$means <- model.tables(aovRTval_F1$aov, type = "mean")
aovRTval_F1$ANOVA
aovRTval_F1$means
datAggItemVal      <- datAggItem[datAggItem$WordGroup == "Valence", ]
datAggItemVal$Wort <- factor(datAggItemVal$Wort)
aovRTval_F2        <- ezANOVA(datAggItemVal, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTval_F2$means  <- model.tables(aovRTval_F2$aov, type = "mean")
aovRTval_F2$ANOVA
aovRTval_F2$means
# ANOVA Error analysis
aovErr_F1       <- ezANOVA(datAggVP, dv = .(perErrorVP), wid = .(VP), within = .(RespDir, Valence, WordGroup), return_aov = TRUE)
aovErr_F1$means <- model.tables(aovRT_F1$aov, type = "mean")
aovErr_F1$ANOVA
aovErr_F1$means
aovErr_F2       <- ezANOVA(datAggItem, dv = .(perErrorItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovErr_F2$means <- model.tables(aovRT_F2$aov, type = "mean")
aovErr_F2$ANOVA
aovErr_F2$means
aovErr_F1       <- ezANOVA(datAggVP, dv = .(perErrorVP), wid = .(VP), within = .(RespDir, Valence, WordGroup), return_aov = TRUE)
aovErr_F1$means <- model.tables(aovErr_F1$aov, type = "mean")
aovErr_F1$ANOVA
aovErr_F1$means
aovErr_F2       <- ezANOVA(datAggItem, dv = .(perErrorItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovErr_F2$means <- model.tables(aovErr_F2$aov, type = "mean")
aovErr_F2$ANOVA
aovErr_F2$means
aovErr_F1$ANOVA
aovErr_F2$ANOVA
datAggVPval       <- datAggVP[datAggVP$WordGroup == "Valence", ]
aovRTval_F1       <- ezANOVA(datAggVPval, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence ), return_aov = TRUE)
aovRTval_F1$means <- model.tables(aovRTval_F1$aov, type = "mean")
aovRTval_F1$ANOVA
aovRTval_F1$means
aovRTval_F1$ANOVA
datAggItemVal      <- datAggItem[datAggItem$WordGroup == "Valence", ]
datAggItemVal$Wort <- factor(datAggItemVal$Wort)
aovRTval_F2        <- ezANOVA(datAggItemVal, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTval_F2$means  <- model.tables(aovRTval_F2$aov, type = "mean")
aovRTval_F2$ANOVA
aovRTval_F2$means
aovRTval_F2$ANOVA
datAggVPloc       <- datAggVP[datAggVP$WordGroup == "Location", ]
aovRTloc_F1       <- ezANOVA(datAggVPloc, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence ), return_aov = TRUE)
aovRTloc_F1$means <- model.tables(aovRTloc_F1$aov, type = "mean")
aovRTloc_F1$ANOVA
aovRTloc_F1$means
datAggItemLoc      <- datAggItem[datAggItem$WordGroup == "Location", ]
datAggItemLoc$Wort <- factor(datAggItemLoc$Wort)
aovRTloc_F2        <- ezANOVA(datAggItemLoc, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTloc_F2$means  <- model.tables(aovRTloc_F2$aov, type = "mean")
aovRTloc_F2$ANOVA
aovRTloc_F2$means
aovRTloc_F1$ANOVA
datAggItemLoc      <- datAggItem[datAggItem$WordGroup == "Location", ]
datAggItemLoc$Wort <- factor(datAggItemLoc$Wort)
aovRTloc_F2        <- ezANOVA(datAggItemLoc, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTloc_F2$means  <- model.tables(aovRTloc_F2$aov, type = "mean")
aovRTloc_F2$ANOVA
aovRTloc_F2$means
aovRTloc_F2$ANOVA
# ANOVA RT analysis
datAggVP       <- as.data.frame(datAggVP)
aovRT_F1       <- ezANOVA(datAggVP, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence, WordGroup), return_aov = TRUE)
aovRT_F1$means <- model.tables(aovRT_F1$aov, type = "mean")
aovRT_F1$ANOVA
aovRT_F1$means
datAggItem     <- as.data.frame(datAggItem)
aovRT_F2       <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovRT_F2$means <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
aovRT_F1$ANOVA
datAggItem     <- as.data.frame(datAggItem)
aovRT_F2       <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovRT_F2$means <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
aovRT_F2$ANOVA
# What's up? Emotion-specific activation of vertical space during language processing
# Experiment 2
# R version 3.2.2
# clear everything
rm(list = ls())
# packages
library("dplyr")
library("ez")
setwd("~/Desktop/Dudschig.et.al(2015)")
dataDir <- "~/Desktop/Dudschig.et.al(2015)/"
dat     <- read.table(file = paste0(dataDir, "exp2.txt"), header=TRUE, encoding="utf-8")
# create factors
dat$VP        <- factor(dat$VP)
dat$Wort      <- factor(dat$Wort)
dat$Valence   <- factor(dat$Valence)
dat$WordGroup <- factor(dat$WordGroup)
dat$RespDir   <- factor(dat$RespDir)
# code outliers + correct/error trials
dat$isOutlier  <- ifelse(dat$RT_Release < 100 | dat$RT_Release > mean(dat$RT_Release[dat$isError == 0]) + 3*sd(dat$RT_Release[dat$isError == 0]), 1, 0)
dat$isExcluded <- ifelse(dat$isError | dat$isOutlier, 1, 0)
# percentage of removed trials
perOutlier <- (sum(dat$isOutlier)/nrow(dat))*100
perError   <- (sum(dat$isError)/nrow(dat))*100
# aggregate data over trials
datAggVP <- dat %>%
group_by(VP, RespDir, Valence, WordGroup) %>%
summarize(nTotalVP     = n(),
rtVP         = mean(RT_Release[isExcluded == 0]),
nErrorVP     = sum(isError),
nOutlierVP   = sum(isOutlier),
perErrorVP   = (nErrorVP/nTotalVP)*100,
perOutlierVP = (nOutlierVP/nTotalVP)/100)
# aggregate data over trials
datAggItem <- dat %>%
group_by(Wort, RespDir, Valence, WordGroup) %>%
summarize(nTotalItem     = n(),
rtItem         = mean(RT_Release[isExcluded == 0]),
nErrorItem     = sum(isError),
nOutlierItem   = sum(isOutlier),
perErrorItem   = (nErrorItem/nTotalItem)*100,
perOutlierItem = (nOutlierItem/nTotalItem)/100)
# aggregate data over vps
datAgg <- datAggVP %>%
group_by(RespDir, Valence, WordGroup) %>%
summarize(nTotal   = n(),
Rt       = mean(rtVP),
sdRt     = sd(rtVP),
seRt     = sdRt/sqrt(nTotal),
perError = mean(perErrorVP),
sdError  = sd(perErrorVP),
seError  = sdError/sqrt(nTotal))
# ANOVA RT analysis
datAggVP       <- as.data.frame(datAggVP)
aovRT_F1       <- ezANOVA(datAggVP, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence, WordGroup), return_aov = TRUE)
aovRT_F1$means <- model.tables(aovRT_F1$aov, type = "mean")
aovRT_F1$ANOVA
aovRT_F1$means
datAggItem     <- as.data.frame(datAggItem)
aovRT_F2       <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovRT_F2$means <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
# Location words only
datAggVPloc       <- datAggVP[datAggVP$WordGroup == "Location", ]
aovRTloc_F1       <- ezANOVA(datAggVPloc, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence ), return_aov = TRUE)
aovRTloc_F1$means <- model.tables(aovRTloc_F1$aov, type = "mean")
aovRTloc_F1$ANOVA
aovRTloc_F1$means
datAggItemLoc      <- datAggItem[datAggItem$WordGroup == "Location", ]
datAggItemLoc$Wort <- factor(datAggItemLoc$Wort)
aovRTloc_F2        <- ezANOVA(datAggItemLoc, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTloc_F2$means  <- model.tables(aovRTloc_F2$aov, type = "mean")
aovRTloc_F2$ANOVA
aovRTloc_F2$means
# Valence words only
datAggVPval       <- datAggVP[datAggVP$WordGroup == "Valence", ]
aovRTval_F1       <- ezANOVA(datAggVPval, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence ), return_aov = TRUE)
aovRTval_F1$means <- model.tables(aovRTval_F1$aov, type = "mean")
aovRTval_F1$ANOVA
aovRTval_F1$means
datAggItemVal      <- datAggItem[datAggItem$WordGroup == "Valence", ]
datAggItemVal$Wort <- factor(datAggItemVal$Wort)
aovRTval_F2        <- ezANOVA(datAggItemVal, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTval_F2$means  <- model.tables(aovRTval_F2$aov, type = "mean")
aovRTval_F2$ANOVA
aovRTval_F2$means
# ANOVA Error analysis
aovErr_F1       <- ezANOVA(datAggVP, dv = .(perErrorVP), wid = .(VP), within = .(RespDir, Valence, WordGroup), return_aov = TRUE)
aovErr_F1$means <- model.tables(aovRT_F1$aov, type = "mean")
aovErr_F1$ANOVA
aovErr_F1$means
aovErr_F2       <- ezANOVA(datAggItem, dv = .(perErrorItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovErr_F2$means <- model.tables(aovRT_F2$aov, type = "mean")
aovErr_F2$ANOVA
aovErr_F2$means
# ANOVA Error analysis
aovErr_F1       <- ezANOVA(datAggVP, dv = .(perErrorVP), wid = .(VP), within = .(RespDir, Valence, WordGroup), return_aov = TRUE)
aovErr_F1$means <- model.tables(aovErr_F1$aov, type = "mean")
aovErr_F1$ANOVA
aovErr_F1$means
aovErr_F1$ANOVA
aovErr_F2       <- ezANOVA(datAggItem, dv = .(perErrorItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovErr_F2$means <- model.tables(aovErr_F2$aov, type = "mean")
aovErr_F2$ANOVA
aovErr_F2$means
aovErr_F2$ANOVA
# Valence words only
datAggVPval       <- datAggVP[datAggVP$WordGroup == "Valence", ]
aovRTval_F1       <- ezANOVA(datAggVPval, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence ), return_aov = TRUE)
aovRTval_F1$means <- model.tables(aovRTval_F1$aov, type = "mean")
aovRTval_F1$ANOVA
aovRTval_F1$means
datAggItemVal      <- datAggItem[datAggItem$WordGroup == "Valence", ]
datAggItemVal$Wort <- factor(datAggItemVal$Wort)
aovRTval_F2        <- ezANOVA(datAggItemVal, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTval_F2$means  <- model.tables(aovRTval_F2$aov, type = "mean")
aovRTval_F2$ANOVA
aovRTval_F2$means
aovRTval_F1$ANOVA
datAggItemVal      <- datAggItem[datAggItem$WordGroup == "Valence", ]
datAggItemVal$Wort <- factor(datAggItemVal$Wort)
aovRTval_F2        <- ezANOVA(datAggItemVal, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTval_F2$means  <- model.tables(aovRTval_F2$aov, type = "mean")
aovRTval_F2$ANOVA
aovRTval_F2$means
aovRTval_F2$ANOVA
datAggVPval       <- datAggVP[datAggVP$WordGroup == "Valence", ]
aovRTval_F1       <- ezANOVA(datAggVPval, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence ), return_aov = TRUE)
aovRTval_F1$means <- model.tables(aovRTval_F1$aov, type = "mean")
aovRTval_F1$ANOVA
aovRTval_F1$means
aovRTval_F1$ANOVA
# Location words only
datAggVPloc       <- datAggVP[datAggVP$WordGroup == "Location", ]
aovRTloc_F1       <- ezANOVA(datAggVPloc, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence ), return_aov = TRUE)
aovRTloc_F1$means <- model.tables(aovRTloc_F1$aov, type = "mean")
aovRTloc_F1$ANOVA
aovRTloc_F1$means
datAggItemLoc      <- datAggItem[datAggItem$WordGroup == "Location", ]
datAggItemLoc$Wort <- factor(datAggItemLoc$Wort)
aovRTloc_F2        <- ezANOVA(datAggItemLoc, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRTloc_F2$means  <- model.tables(aovRTloc_F2$aov, type = "mean")
aovRTloc_F2$ANOVA
aovRTloc_F2$means
aovRTloc_F2$ANOVA
aovRTloc_F1$ANOVA
# ANOVA RT analysis
datAggVP       <- as.data.frame(datAggVP)
aovRT_F1       <- ezANOVA(datAggVP, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence, WordGroup), return_aov = TRUE)
aovRT_F1$means <- model.tables(aovRT_F1$aov, type = "mean")
aovRT_F1$ANOVA
aovRT_F1$means
datAggItem     <- as.data.frame(datAggItem)
aovRT_F2       <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovRT_F2$means <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
aovRT_F1$ANOVA
datAggItem     <- as.data.frame(datAggItem)
aovRT_F2       <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(WordGroup, Valence), return_aov = TRUE)
aovRT_F2$means <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
aovRT_F2$ANOVA
aovRT_F1$ANOVA
# What's up? Emotion-specific activation of vertical space during language processing
# Experiment 1a
# R version 3.2.2
# clear everything
rm(list = ls())
# packages
library("dplyr")
library("ez")
# read combined vp final datafile
setwd("~/Desktop/Dudschig.et.al(2015)")
dataDir <- "~/Desktop/Dudschig.et.al(2015)/"
dat     <- read.table(file = paste0(dataDir, "exp1a.txt"), header=TRUE, encoding="utf-8")
# create factors
dat$VP        <- factor(dat$VP)
dat$Wort      <- factor(dat$Wort)
dat$Valence   <- factor(dat$Valence)
dat$RespDir   <- factor(dat$RespDir)
# code outliers + correct/error trials
dat$isOutlier  <- ifelse(dat$RT_Release < 100 | dat$RT_Release > mean(dat$RT_Release[dat$isError == 0]) + 3*sd(dat$RT_Release[dat$isError == 0]), 1, 0)
dat$isExcluded <- ifelse(dat$isError | dat$isOutlier, 1, 0)
# percentage of removed trials
perOutlier = (sum(dat$isOutlier)/nrow(dat))*100
perError = (sum(dat$isError)/nrow(dat))*100
# aggregate data over trials F1
datAggVP <- dat %>%
group_by(VP, RespDir, Valence) %>%
summarize(nTotalVP     = n(),
rtVP         = mean(RT_Release[isExcluded == 0]),
nErrorVP     = sum(isError),
nOutlierVP   = sum(isOutlier),
perErrorVP   = (nErrorVP/nTotalVP)*100,
perOutlierVP = (nOutlierVP/nTotalVP)/100)
# aggregate data over trials F2
datAggItem <- dat %>%
group_by(Wort, RespDir, Valence) %>%
summarize(nTotalItem     = n(),
rtItem         = mean(RT_Release[isExcluded == 0]),
nErrorItem     = sum(isError),
nOutlierItem   = sum(isOutlier),
perErrorItem   = (nErrorItem/nTotalItem)*100,
perOutlierItem = (nOutlierItem/nTotalItem)/100)
# aggregate data over vps
datAgg <- datAggVP %>%
group_by(RespDir, Valence) %>%
summarize(nTotal   = n(),
Rt       = mean(rtVP),
sdRt     = sd(rtVP),
seRt     = sdRt/sqrt(nTotal),
perError = mean(perErrorVP),
sdError  = sd(perErrorVP),
seError  = sdError/sqrt(nTotal))
# ANOVA RT analysis
datAggVP           <- as.data.frame(datAggVP)
aovRT_F1           <- ezANOVA(datAggVP, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence), return_aov = TRUE)
aovRT_F1$means     <- model.tables(aovRT_F1$aov, type = "mean")
aovRT_F1$ANOVA
aovRT_F1$means
datAggItem         <- as.data.frame(datAggItem)
aovRT_F2           <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRT_F2$means     <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
# ANOVA Error analysis
aovErr_F1           <- ezANOVA(datAggVP, dv = .(perErrorVP), wid = .(VP), within = .(RespDir, Valence), return_aov = TRUE)
aovErr_F1$means     <- model.tables(aovRT_F1$aov, type = "mean")
aovErr_F1$ANOVA
aovErr_F1$means
aovErr_F2           <- ezANOVA(datAggItem, dv = .(perErrorItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovErr_F2$means     <- model.tables(aovRT_F2$aov, type = "mean")
aovErr_F2$ANOVA
aovErr_F2$means
# ANOVA Error analysis
aovErr_F1           <- ezANOVA(datAggVP, dv = .(perErrorVP), wid = .(VP), within = .(RespDir, Valence), return_aov = TRUE)
aovErr_F1$means     <- model.tables(aovErr_F1$aov, type = "mean")
aovErr_F1$ANOVA
aovErr_F1$means
aovErr_F2           <- ezANOVA(datAggItem, dv = .(perErrorItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovErr_F2$means     <- model.tables(aovErr_F2$aov, type = "mean")
aovErr_F2$ANOVA
aovErr_F2$means
aovErr_F1$ANOVA
sdError  = sd(perErrorVP),
aovRT_F2$ANOVA
# create factors
dat$VP        <- factor(dat$VP)
dat$Wort      <- factor(dat$Wort)
dat$Valence   <- factor(dat$Valence)
dat$RespDir   <- factor(dat$RespDir)
# code outliers + correct/error trials
dat$isOutlier  <- ifelse(dat$RT_Release < 100 | dat$RT_Release > mean(dat$RT_Release[dat$isError == 0]) + 3*sd(dat$RT_Release[dat$isError == 0]), 1, 0)
dat$isExcluded <- ifelse(dat$isError | dat$isOutlier, 1, 0)
# percentage of removed trials
perOutlier = (sum(dat$isOutlier)/nrow(dat))*100
perError = (sum(dat$isError)/nrow(dat))*100
# aggregate data over trials F1
datAggVP <- dat %>%
group_by(VP, RespDir, Valence) %>%
summarize(nTotalVP     = n(),
rtVP         = mean(RT_Release[isExcluded == 0]),
nErrorVP     = sum(isError),
nOutlierVP   = sum(isOutlier),
perErrorVP   = (nErrorVP/nTotalVP)*100,
perOutlierVP = (nOutlierVP/nTotalVP)/100)
# aggregate data over trials F2
datAggItem <- dat %>%
group_by(Wort, RespDir, Valence) %>%
summarize(nTotalItem     = n(),
rtItem         = mean(RT_Release[isExcluded == 0]),
nErrorItem     = sum(isError),
nOutlierItem   = sum(isOutlier),
perErrorItem   = (nErrorItem/nTotalItem)*100,
perOutlierItem = (nOutlierItem/nTotalItem)/100)
# aggregate data over vps
datAgg <- datAggVP %>%
group_by(RespDir, Valence) %>%
summarize(nTotal   = n(),
Rt       = mean(rtVP),
sdRt     = sd(rtVP),
seRt     = sdRt/sqrt(nTotal),
perError = mean(perErrorVP),
sdError  = sd(perErrorVP),
seError  = sdError/sqrt(nTotal))
# ANOVA RT analysis
datAggVP           <- as.data.frame(datAggVP)
aovRT_F1           <- ezANOVA(datAggVP, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence), return_aov = TRUE)
aovRT_F1$means     <- model.tables(aovRT_F1$aov, type = "mean")
aovRT_F1$ANOVA
aovRT_F1$means
datAggItem         <- as.data.frame(datAggItem)
aovRT_F2           <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRT_F2$means     <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
# ANOVA Error analysis
aovErr_F1           <- ezANOVA(datAggVP, dv = .(perErrorVP), wid = .(VP), within = .(RespDir, Valence), return_aov = TRUE)
aovErr_F1$means     <- model.tables(aovErr_F1$aov, type = "mean")
aovErr_F1$ANOVA
aovErr_F1$means
aovErr_F2           <- ezANOVA(datAggItem, dv = .(perErrorItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovErr_F2$means     <- model.tables(aovErr_F2$aov, type = "mean")
aovErr_F2$ANOVA
aovErr_F2$means
datAggVP           <- as.data.frame(datAggVP)
aovRT_F1           <- ezANOVA(datAggVP, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence), return_aov = TRUE)
aovRT_F1$means     <- model.tables(aovRT_F1$aov, type = "mean")
aovRT_F1$ANOVA
aovRT_F1$means
aovRT_F1$ANOVA
datAggItem         <- as.data.frame(datAggItem)
aovRT_F2           <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRT_F2$means     <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
aovRT_F2$ANOVA
# What's up? Emotion-specific activation of vertical space during language processing
# Experiment 1b
# R version 3.2.2
# clear everything
rm(list = ls())
# packages
library("dplyr")
library("ez")
setwd("~/Desktop/Dudschig.et.al(2015)")
dataDir <- "~/Desktop/Dudschig.et.al(2015)/"
dat     <- read.table(file = paste0(dataDir, "exp1b.txt"), header=TRUE, encoding="utf-8")
# remove location words
dat <- dat[dat$WordGroup == "Valence", ]
# create factors
dat$VP      <- factor(dat$VP)
dat$Wort    <- factor(dat$Wort)
dat$Valence <- factor(dat$Valence)
dat$RespDir <- factor(dat$RespDir)
# remove VP16 (error rate > 20%)
dat <- dat[dat$VP != 16, ]
# code outliers + correct/error trials
dat$isOutlier     <- ifelse(dat$RT_Release < 100 | dat$RT_Release > mean(dat$RT_Release[dat$isError == 0]) + 3*sd(dat$RT_Release[dat$isError == 0]), 1, 0)
dat$isExcluded    <- ifelse(dat$isError | dat$isOutlier, 1, 0)
# Error rate per VP
errorRate <- dat %>%
group_by(VP) %>%
summarize(nTotalVP = n(),
nError   = sum(isError),
perError = (nError/nTotalVP)*100)
# percentage of removed trials
perOutlier = (sum(dat$isOutlier)/nrow(dat))*100
perError = (sum(dat$isError)/nrow(dat))*100
# aggregate data over trials F1
datAggVP <- dat %>%
group_by(VP, RespDir, Valence) %>%
summarize(nTotalVP     = n(),
rtVP         = mean(RT_Release[isExcluded == 0]),
nErrorVP     = sum(isError),
nOutlierVP   = sum(isOutlier),
perErrorVP   = (nErrorVP/nTotalVP)*100,
perOutlierVP = (nOutlierVP/nTotalVP)/100)
# aggregate data over trials F2
datAggItem <- dat %>%
group_by(Wort, RespDir, Valence) %>%
summarize(nTotalItem     = n(),
rtItem         = mean(RT_Release[isExcluded == 0]),
nErrorItem     = sum(isError),
nOutlierItem   = sum(isOutlier),
perErrorItem   = (nErrorItem/nTotalItem)*100,
perOutlierItem = (nOutlierItem/nTotalItem)/100)
# aggregate data over vps
datAgg <- datAggVP %>%
group_by(RespDir, Valence) %>%
summarize(nTotal   = n(),
Rt       = mean(rtVP),
sdRt     = sd(rtVP),
seRt     = sdRt/sqrt(nTotal),
perError = mean(perErrorVP),
sdError  = sd(perErrorVP),
seError  = sdError/sqrt(nTotal))
# ANOVA RT analysis
datAggVP       <- as.data.frame(datAggVP)
aovRT_F1       <- ezANOVA(datAggVP, dv = .(rtVP), wid = .(VP), within = .(RespDir, Valence), return_aov = TRUE)
aovRT_F1$means <- model.tables(aovRT_F1$aov, type = "mean")
aovRT_F1$ANOVA
aovRT_F1$means
datAggItem      <- as.data.frame(datAggItem)
aovRT_F2        <- ezANOVA(datAggItem, dv = .(rtItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovRT_F2$means  <- model.tables(aovRT_F2$aov, type = "mean")
aovRT_F2$ANOVA
aovRT_F2$means
# ANOVA Error analysis
aovErr_F1       <- ezANOVA(datAggVP, dv = .(perErrorVP), wid = .(VP), within = .(RespDir, Valence), return_aov = TRUE)
aovErr_F1$means <- model.tables(aovErr_F1$aov, type = "mean")
aovErr_F1$ANOVA
aovErr_F1$means
aovErr_F2           <- ezANOVA(datAggItem, dv = .(perErrorItem), wid = .(Wort), within = .(RespDir), between = .(Valence), return_aov = TRUE)
aovErr_F2$means     <- model.tables(aovErr_F2$aov, type = "mean")
aovErr_F2$ANOVA
aovErr_F2$means
