nanjing<-read.table("nanjingdata.txt")#
dalian<-read.table("daliandata.txt")
#
#
## nanjing expt is called "e1", machine is 1-5
#
colnames(nanjing) <- c("machine","subj","expt","item","condition","pos","correct","rt","dummy")
#
#
## dalian expt is called "e2", machine is 6-7#
colnames(dalian) <- c("machine","subj","expt","item","condition","pos","correct","rt","dummy")#
#
len <- length(nanjing$rt)#
spillover <- c(NA,nanjing$rt[1:(len-1)])#
nanjing$spillover <- spillover
#
nanjing$subject <- factor(paste(nanjing$machine,nanjing$subj,sep=""))
#

#
summary(nanjing)
#
#
len <- length(dalian$rt)#
spillover <- c(NA,dalian$rt[1:(len-1)])#
dalian$spillover <- spillover#
dalian$subject <- factor(paste(dalian$machine,dalian$subj,sep=""))#
#
summary(dalian)#
#
alldata <- rbind(nanjing,dalian)#
#
#
#Nanjing data (m1-m5)#
#               0                         1      2              3    4              5      6      7      8      9      10 
#
#condition a    animate NP (antecedent) | verb | inanimate NP | at | inanimate NP | verb | when | verb | ziji | POSS | NP
#
#condition b    animate NP (antecedent) | verb | inanimate NP | at | animate NP | verb | when | verb | ziji | POSS | NP
#
#condition c (e)    inanimate NP | verb | animate NP (antecedent) | at | inanimate NP | verb | when | verb | ziji | POSS | NP
#
#condition d (f)   inanimate NP | verb | animate NP (antecedent) | at | animate NP | verb | when | verb | ziji | POSS | NP#
#
#
#Dalian data (m6 and m7)
#
#               0                         1      2              3    4              5      6      7      8      9      10   11   12#
#condition a    animate NP (antecedent) | verb | inanimate NP | at | inanimate NP | verb | when | verb | ziji | POSS | adj | de | NP
#
#condition b    animate NP (antecedent) | verb | inanimate NP | at | animate NP | verb | when | verb | ziji | POSS | adj | de | NP
#
#condition c    inanimate NP | verb | animate NP (antecedent) | at | inanimate NP | verb | when | verb | ziji | POSS | adj | de | NP
#
#condition d    inanimate NP | verb | animate NP (antecedent) | at | animate NP | verb | when | verb | ziji | POSS | adj | de | NP
#

#
# condition a: LD with ziji; inanimate interposed NP
#
# condition b: LD with ziji; animate interposed NP
#
# condition c: Local with ziji; inanimate interposed NP
#
# condition d: Local with ziji; animate interposed NP
#

#
#
se <- function(x) #
	{#
		y <- x[!is.na(x)] # remove the missing values #
	sqrt(var(as.vector(y))/length(y))#
}#
#
## Question-response accuracies and latencies#
#
## get rid of "-" in the "correct" column#
questions <- subset(alldata,correct%in%c(1,0)) #
#
questions$correct <- as.numeric(as.character(questions$correct))#
#
## the accuracy of the data#
## nanjing:81.25% dalian:89.27%#
with(questions,tapply(correct,IND=list(expt,condition),mean))#
#
## combined 85.26%#
with(questions,tapply(correct,IND=list(condition),mean))#
#
## the accuracy se of the data#
with(questions,tapply(correct,IND=list(expt,condition),se))#
## combined#
with(questions,tapply(correct,IND=list(condition),se))#
#
#
#
## Predictions:#
## c1:effect of local/LD reflexive#
c1 <- ifelse(questions$condition%in%c("c","d"),-1,ifelse(questions$condition%in%c("a","b"),1,0))#
## c2:effect of intrusion effect: with or without an interfered animate NP on the reflexive dependency path#
c2 <- ifelse(questions$condition%in%c("a","c"),-1,ifelse(questions$condition%in%c("b","d"),1,0))#
## c3:test whether the location difference interacts with locality and intrusion#
c3 <- ifelse(questions$expt=="e1",-1,1)#
#
#
questions$c1 <- c1#
questions$c2 <- c2#
questions$c3 <- c3#
#
questionsnanjing <- subset(questions,expt=="e1")#
questionsdalian <- subset(questions,expt=="e2")#
#
#
library(lme4)#
#
## use binomial() to compare accuracies!#
## Sig test for accuracy of answers in combined expt; local is sig better than LD; dalian is better than nanjing#
(fm1 <- summary(lmer(correct~c1+c2+c3+(1|item)+(1|subject),family=binomial(),questions)))#
#
## Sig test for accuracy of answers in nanjing; local is sig better than LD;#
(fm2 <- summary(lmer(correct~c1+c2+(1|item)+(1|subject),family=binomial(),questionsnanjing)))#
#
## Sig test for accuracy of answers in dalian; no sig #
(fm3 <- summary(lmer(correct~c1+c2+(1|item)+(1|subject),family=binomial(),questionsdalian)))#
#
## Sig test for latencies of answers in nanjing; LD takes longer time to answer (t=3.83); interposed animate N causes delay (t=1.92)#
(fm4 <- summary(lmer(log(rt)~c1+c2+(1|item)+(1|subject),questionsnanjing)))#
#
## Sig test for latencies of answers in dalian;LD takes longer time to answer (t=3.94);#
(fm5 <- summary(lmer(log(rt)~c1+c2+(1|item)+(1|subject),questionsdalian)))#
#
## Sig test for latencies of answers in combined expt; LD takes longer time to answer (t=5.46); interposed animate N causes delay (t=1.81)#
(fm6 <- summary(lmer(log(rt)~c1+c2+c3+(1|item)+(1|subject),questions)))#

#
## Predictions:
#
## effect of local/LD reflexive
#
c1 <- ifelse(alldata$condition%in%c("c","d"),-1,ifelse(alldata$condition%in%c("a","b"),1,0))
#
## effect of intrusion effect: with or without an interfered animate NP on the reflexive dependency path#
c2 <- ifelse(alldata$condition%in%c("a","c"),-1,ifelse(alldata$condition%in%c("b","d"),1,0))#
## test whether the location difference interacts with locality and intrusion#
c3 <- ifelse(alldata$expt=="e1",-1,1)#

#
## add contrasts:
#
alldata$c1 <- c1#
alldata$c2 <- c2
#
alldata$c3 <- c3#
#

#
library(car)#
#
## 0.42% data larger than 2000 ms in nanjing#
((dim(subset(alldata,pos%in%c("8","9") & expt=="e1"))[1]-dim(subset(alldata,pos%in%c("8","9") & expt=="e1" & rt<2000))[1])/dim(subset(alldata,pos%in%c("8","9") & expt=="e1"))[1])#
#
## 1.09% data larger than 2000 ms in dalian#
((dim(subset(alldata,pos%in%c("8","9") & expt=="e2"))[1]-dim(subset(alldata,pos%in%c("8","9") & expt=="e2" & rt<2000))[1])/dim(subset(alldata,pos%in%c("8","9") & expt=="e2"))[1])#
#
## 0.75% data larger than 2000 ms in dalian#
((dim(subset(alldata,pos%in%c("8","9")))[1]-dim(subset(alldata,pos%in%c("8","9") & rt<2000))[1])/dim(subset(alldata,pos%in%c("8","9")))[1])#
#
## means#
with(subset(alldata,pos%in%c("8","9")),tapply(rt,IND=list(pos,condition),mean))#
#
(mean.all.locality<-with(subset(alldata,pos%in%c("8","9")),tapply(rt,IND=list(pos,c1),mean)))#
(mean.all.intrusion<-with(subset(alldata,pos%in%c("8","9")),tapply(rt,IND=list(pos,c2),mean)))#
#
## ses#
(se.all.locality<-with(subset(alldata,pos%in%c("8","9")),tapply(rt,IND=list(pos,c1),se)))#
(se.all.intrusion<-with(subset(alldata,pos%in%c("8","9")),tapply(rt,IND=list(pos,c2),se)))#
#
#
mean.all.locality.ziji <- mean.all.locality[11,]#
mean.all.locality.ziji1 <- mean.all.locality[12,]#
#
mean.all.intrusion.ziji <- mean.all.intrusion[11,]#
mean.all.intrusion.ziji1 <- mean.all.intrusion[12,]#
#
#
se.all.locality.ziji <- se.all.locality[11,]#
se.all.locality.ziji1 <- se.all.locality[12,]#
#
se.all.intrusion.ziji <- se.all.intrusion[11,]#
se.all.intrusion.ziji1 <- se.all.intrusion[12,]#
#
sel.all.locality.ziji <- mean.all.locality.ziji-se.all.locality.ziji#
sel.all.locality.ziji1 <- mean.all.locality.ziji1-se.all.locality.ziji1#
#
seu.all.locality.ziji <- mean.all.locality.ziji+se.all.locality.ziji#
seu.all.locality.ziji1 <- mean.all.locality.ziji1+se.all.locality.ziji1#
#
sel.all.intrusion.ziji <- mean.all.intrusion.ziji-se.all.intrusion.ziji#
sel.all.intrusion.ziji1 <- mean.all.intrusion.ziji1-se.all.intrusion.ziji1#
#
seu.all.intrusion.ziji <- mean.all.intrusion.ziji+se.all.intrusion.ziji#
seu.all.intrusion.ziji1 <- mean.all.intrusion.ziji1+se.all.intrusion.ziji1#
#
postscript("locality.ps")#
barplot(matrix(c(mean.all.locality.ziji,mean.all.locality.ziji1),ncol=2),beside=T,ylim=c(0,590),cex.axis=1.5)#
title(ylab="Reading Time (ms)",cex.lab=1.5)#
arrows(c(1.5,2.5,4.5,5.5),c(sel.all.locality.ziji,sel.all.locality.ziji1),#
       c(1.5,2.5,4.5,5.5),c(seu.all.locality.ziji,seu.all.locality.ziji1),code=3,angle=90,length=0.1)#
mtext(c("ziji","ziji+1"),at=c(2,5),side=1,line=.75,cex=1.75)      #
legend("topleft",c("Local-Binding (cd)","LD-Binding (ab)"),cex=1.5,bty="n", fill=c("black","grey"))#
dev.off()#
#
postscript("intrusion.ps")#
barplot(matrix(c(mean.all.intrusion.ziji,mean.all.intrusion.ziji1),ncol=2),beside=T,ylim=c(0,590),cex.axis=1.5)#
title(ylab="Reading Time (ms)",cex.lab=1.5)#
arrows(c(1.5,2.5,4.5,5.5),c(sel.all.intrusion.ziji,sel.all.intrusion.ziji1),#
       c(1.5,2.5,4.5,5.5),c(seu.all.intrusion.ziji,seu.all.intrusion.ziji1),code=3,angle=90,length=0.1)#
mtext(c("ziji","ziji+1"),at=c(2,5),side=1,line=.75,cex=1.75)      #
legend("topleft",c("inanimate intervener (ac)","animate intervener (bd)"),cex=1.5,bty="n", fill=c("black","grey"))#
dev.off()#
#
#
##alldata$clogspillover <- scale(log(alldata$spillover),scale=FALSE) #
       #
## ziji position; c1: t=1.92; c2:t=2.03;c3:t=2.48; no interaction between c3 and c1c2#
(fm.ziji <- lmer(log(rt)~c1*c2*c3+#
     (1|subject)+(1|item),subset(alldata,pos==8 & rt<2000)))#
## ziji position; c1: t=2.26; c2:t=2.24;c3:t=-0.29; no interaction between c3 and c1c2#
(fm.ziji1 <- lmer(log(rt)~c1*c2*c3+#
     (1|subject)+(1|item),subset(alldata,pos==9 & rt<2000)))
with(subset(alldata,pos%in%c("8","9")),tapply(rt,IND=list(pos,condition),mean))
