R version 2.8.0 (2008-10-20) Copyright (C) 2008 The R Foundation for Statistical Computing ISBN 3-900051-07-0 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. Natural language support but running in an English locale R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > x <- array(list(0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,0 + ,0 + ,0 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,1 + ,'E' + ,1 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,0 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,1 + ,'E' + ,1 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,1 + ,'F' + ,1 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,0 + ,0 + ,1 + ,'F' + ,1 + ,0 + ,0 + ,1 + ,'E' + ,1 + ,0 + ,0 + ,1 + ,'E' + ,1 + ,0 + ,1 + ,1 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,1 + ,'E' + ,1 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,1 + ,'E' + ,1 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,1 + ,'E' + ,1 + ,0 + ,0 + ,1 + ,'F' + ,1 + ,0 + ,0 + ,1 + ,'F' + ,1 + ,0 + ,0 + ,0 + ,'F' + ,0 + ,0 + ,0 + ,1 + ,'F' + ,1 + ,0 + ,0 + ,1 + ,'H' + ,1 + ,1 + ,0 + ,1 + ,'E' + ,1 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,1 + ,'E' + ,1 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,1 + ,'E' + ,1 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,1 + ,'E' + ,1 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,1 + ,'E' + ,1 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,1 + ,0 + ,'E' + ,-1 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,1 + ,'E' + ,1 + ,0 + ,0 + ,0 + ,'F' + ,0 + ,1 + ,0 + ,1 + ,'E' + ,1 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,0 + ,0 + ,0 + ,'E' + ,0 + ,0 + ,0 + ,0 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,1 + ,1 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,0 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,0 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,1 + ,1 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,1 + ,'E' + ,1 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,1 + ,'F' + ,1 + ,1 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,0 + ,0 + ,0 + ,'H' + ,0 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,1 + ,0 + ,0 + ,'E' + ,0 + ,0 + ,0 + ,0 + ,'F' + ,0 + ,1 + ,0 + ,0 + ,'F' + ,0 + ,1) + ,dim=c(5 + ,117) + ,dimnames=list(c('pre' + ,'post' + ,'treat' + ,'diff' + ,'gender') + ,1:117)) > y <- array(NA,dim=c(5,117),dimnames=list(c('pre','post','treat','diff','gender'),1:117)) > for (i in 1:dim(x)[1]) + { + for (j in 1:dim(x)[2]) + { + y[i,j] <- as.numeric(x[i,j]) + } + } There were 50 or more warnings (use warnings() to see the first 50) > par4 = 'TRUE' > par3 = '3' > par2 = '1' > par1 = '2' > ylab = 'Y Variable Name' > xlab = 'X Variable Name' > main = 'Title Goes Here' > #'GNU S' R Code compiled by R2WASP v. 1.0.44 () > #Author: Dr. Ian E. Holliday > #To cite this work: Ian E. Holliday, 2009, YOUR SOFTWARE TITLE (vNUMBER) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_YOURPAGE.wasp/ > #Source of accompanying publication: > #Technical description: > cat1 <- as.numeric(par1) # > cat2<- as.numeric(par2) # > cat3 <- as.numeric(par3) > intercept<-as.logical(par4) > x <- t(x) > x1<-as.numeric(x[,cat1]) > f1<-as.character(x[,cat2]) > f2 <- as.character(x[,cat3]) > xdf<-data.frame(x1,f1, f2) > (V1<-dimnames(y)[[1]][cat1]) [1] "post" > (V2<-dimnames(y)[[1]][cat2]) [1] "pre" > (V3 <-dimnames(y)[[1]][cat3]) [1] "treat" > names(xdf)<-c('Response', 'Treatment_A', 'Treatment_B') > if(intercept == FALSE) (lmxdf<-lm(Response ~ Treatment_A * Treatment_B- 1, data = xdf) ) else (lmxdf<-lm(Response ~ Treatment_A * Treatment_B, data = xdf) ) Call: lm(formula = Response ~ Treatment_A * Treatment_B, data = xdf) Coefficients: (Intercept) Treatment_A1 0.4167 -0.4167 Treatment_BF Treatment_BH 0.1096 -0.3910 Treatment_A1:Treatment_BF Treatment_A1:Treatment_BH 0.8904 1.3910 > (aov.xdf<-aov(lmxdf) ) Call: aov(formula = lmxdf) Terms: Treatment_A Treatment_B Treatment_A:Treatment_B Residuals Sum of Squares 0.719027 5.104380 0.978550 19.198043 Deg. of Freedom 1 2 2 111 Residual standard error: 0.415879 Estimated effects may be unbalanced > (anova.xdf<-anova(lmxdf) ) Analysis of Variance Table Response: Response Df Sum Sq Mean Sq F value Pr(>F) Treatment_A 1 0.7190 0.7190 4.1573 0.04383 * Treatment_B 2 5.1044 2.5522 14.7564 2.076e-06 *** Treatment_A:Treatment_B 2 0.9786 0.4893 2.8289 0.06334 . Residuals 111 19.1980 0.1730 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 > > #Note: the /var/www/html/freestat/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab > load(file="/var/www/html/freestat/rcomp/createtable") > > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'ANOVA Model', length(lmxdf$coefficients)+1,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a, lmxdf$call['formula'],length(lmxdf$coefficients)+1,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a, 'means',,TRUE) > for(i in 1:length(lmxdf$coefficients)){ + a<-table.element(a, round(lmxdf$coefficients[i], digits=3),,FALSE) + } > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/www/html/freestat/rcomp/tmp/179n41290119996.tab") > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'ANOVA Statistics', 5+1,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a, ' ',,TRUE) > a<-table.element(a, 'Df',,FALSE) > a<-table.element(a, 'Sum Sq',,FALSE) > a<-table.element(a, 'Mean Sq',,FALSE) > a<-table.element(a, 'F value',,FALSE) > a<-table.element(a, 'Pr(>F)',,FALSE) > a<-table.row.end(a) > for(i in 1 : length(rownames(anova.xdf))-1){ + a<-table.row.start(a) + a<-table.element(a,rownames(anova.xdf)[i] ,,TRUE) + a<-table.element(a, anova.xdf$Df[1],,FALSE) + a<-table.element(a, round(anova.xdf$'Sum Sq'[i], digits=3),,FALSE) + a<-table.element(a, round(anova.xdf$'Mean Sq'[i], digits=3),,FALSE) + a<-table.element(a, round(anova.xdf$'F value'[i], digits=3),,FALSE) + a<-table.element(a, round(anova.xdf$'Pr(>F)'[i], digits=3),,FALSE) + a<-table.row.end(a) + } > a<-table.row.start(a) > a<-table.element(a, 'Residuals',,TRUE) > a<-table.element(a, anova.xdf$'Df'[i+1],,FALSE) > a<-table.element(a, round(anova.xdf$'Sum Sq'[i+1], digits=3),,FALSE) > a<-table.element(a, round(anova.xdf$'Mean Sq'[i+1], digits=3),,FALSE) > a<-table.element(a, ' ',,FALSE) > a<-table.element(a, ' ',,FALSE) > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/www/html/freestat/rcomp/tmp/231lc1290119996.tab") > postscript(file="/var/www/html/freestat/rcomp/tmp/331lc1290119996.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > boxplot(Response ~ Treatment_A + Treatment_B, data=xdf, xlab=V2, ylab=V1, main='Boxplots of ANOVA Groups') > dev.off() null device 1 > postscript(file="/var/www/html/freestat/rcomp/tmp/431lc1290119996.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > xdf2 <- xdf # to preserve xdf make copy for function > names(xdf2) <- c(V1, V2, V3) > plot.design(xdf2, main='Design Plot of Group Means') > dev.off() null device 1 > postscript(file="/var/www/html/freestat/rcomp/tmp/531lc1290119996.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > interaction.plot(xdf$Treatment_A, xdf$Treatment_B, xdf$Response, xlab=V2, ylab=V1, trace.label=V3, main='Possible Interactions Between Anova Groups') > dev.off() null device 1 > if(intercept==TRUE){ + thsd<-TukeyHSD(aov.xdf) + names(thsd) <- c(V2, V3, paste(V2, ':', V3, sep='')) + postscript(file="/var/www/html/freestat/rcomp/tmp/6va2f1290119996.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) + layout(matrix(c(1,2,3,3), 2,2)) + plot(thsd, las=1) + dev.off() + } null device 1 > if(intercept==TRUE){ + ntables<-length(names(thsd)) + a<-table.start() + a<-table.row.start(a) + a<-table.element(a,'Tukey Honest Significant Difference Comparisons', 5,TRUE) + a<-table.row.end(a) + a<-table.row.start(a) + a<-table.element(a, ' ', 1, TRUE) + for(i in 1:4){ + a<-table.element(a,colnames(thsd[[1]])[i], 1, TRUE) + } + a<-table.row.end(a) + for(nt in 1:ntables){ + for(i in 1:length(rownames(thsd[[nt]]))){ + a<-table.row.start(a) + a<-table.element(a,rownames(thsd[[nt]])[i], 1, TRUE) + for(j in 1:4){ + a<-table.element(a,round(thsd[[nt]][i,j], digits=3), 1, FALSE) + } + a<-table.row.end(a) + } + } # end nt + a<-table.end(a) + table.save(a,file="/var/www/html/freestat/rcomp/tmp/7hb1l1290119996.tab") + }#end if hsd tables > if(intercept==FALSE){ + a<-table.start() + a<-table.row.start(a) + a<-table.element(a,'TukeyHSD Message', 1,TRUE) + a<-table.row.end(a) + a<-table.start() + a<-table.row.start(a) + a<-table.element(a,'Must Include Intercept to use Tukey Test ', 1, FALSE) + a<-table.row.end(a) + a<-table.end(a) + table.save(a,file="/var/www/html/freestat/rcomp/tmp/8r2io1290119996.tab") + } > library(car) > lt.lmxdf<-levene.test(lmxdf) > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Levenes Test for Homogeneity of Variance', 4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,' ', 1, TRUE) > for (i in 1:3){ + a<-table.element(a,names(lt.lmxdf)[i], 1, FALSE) + } > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Group', 1, TRUE) > for (i in 1:3){ + a<-table.element(a,round(lt.lmxdf[[i]][1], digits=3), 1, FALSE) + } > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,' ', 1, TRUE) > a<-table.element(a,lt.lmxdf[[1]][2], 1, FALSE) > a<-table.element(a,' ', 1, FALSE) > a<-table.element(a,' ', 1, FALSE) > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/www/html/freestat/rcomp/tmp/9vlyc1290119996.tab") > > try(system("convert tmp/331lc1290119996.ps tmp/331lc1290119996.png",intern=TRUE)) character(0) > try(system("convert tmp/431lc1290119996.ps tmp/431lc1290119996.png",intern=TRUE)) character(0) > try(system("convert tmp/531lc1290119996.ps tmp/531lc1290119996.png",intern=TRUE)) character(0) > try(system("convert tmp/6va2f1290119996.ps tmp/6va2f1290119996.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 1.580 0.816 1.739