R version 2.15.2 (2012-10-26) -- "Trick or Treat" Copyright (C) 2012 The R Foundation for Statistical Computing ISBN 3-900051-07-0 Platform: i686-pc-linux-gnu (32-bit) 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. 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('Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Low' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Low' + ,'Data' + ,'Male' + ,'High' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Low' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Low' + ,'Data' + ,'Male' + ,'Low' + ,'Data' + ,'Female' + ,'Low' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Low' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Low' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Low' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Female' + ,'Low' + ,'Data' + ,'Male' + ,'Low' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'High' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Low' + ,'Data' + ,'Female' + ,'Low' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Female' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Data' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Low' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Female' + ,'High' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'High' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'High' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'High' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Female' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male' + ,'Average' + ,'Blog' + ,'Male') + ,dim=c(3 + ,116) + ,dimnames=list(c('Score' + ,'Treatment' + ,'Gender') + ,1:116)) > y <- array(NA,dim=c(3,116),dimnames=list(c('Score','Treatment','Gender'),1:116)) > 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) > par3 = 'Pearson Chi-Squared' > par2 = '2' > par1 = '1' > main = 'Association Plot' > par3 <- 'Pearson Chi-Squared' > par2 <- '2' > par1 <- '1' > #'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: > library(vcd) Loading required package: MASS Loading required package: grid Loading required package: colorspace > cat1 <- as.numeric(par1) # > cat2<- as.numeric(par2) # > simulate.p.value=FALSE > if (par3 == 'Exact Pearson Chi-Squared by Simulation') simulate.p.value=TRUE > x <- t(x) > (z <- array(unlist(x),dim=c(length(x[,1]),length(x[1,])))) [,1] [,2] [,3] [1,] "Average" "Data" "Female" [2,] "Average" "Data" "Female" [3,] "Low" "Data" "Male" [4,] "Average" "Data" "Male" [5,] "Average" "Data" "Male" [6,] "Average" "Data" "Male" [7,] "Average" "Data" "Female" [8,] "Low" "Data" "Male" [9,] "High" "Data" "Female" [10,] "Average" "Data" "Female" [11,] "Average" "Data" "Male" [12,] "Average" "Data" "Female" [13,] "Average" "Data" "Female" [14,] "Average" "Data" "Male" [15,] "Low" "Data" "Female" [16,] "Average" "Data" "Male" [17,] "Low" "Data" "Male" [18,] "Low" "Data" "Female" [19,] "Low" "Data" "Female" [20,] "Average" "Data" "Female" [21,] "Average" "Data" "Female" [22,] "Average" "Data" "Female" [23,] "Average" "Data" "Female" [24,] "Average" "Data" "Female" [25,] "Average" "Data" "Male" [26,] "Average" "Data" "Male" [27,] "Average" "Data" "Female" [28,] "Average" "Data" "Male" [29,] "Average" "Data" "Male" [30,] "Average" "Data" "Male" [31,] "Low" "Data" "Male" [32,] "Average" "Data" "Female" [33,] "Average" "Data" "Male" [34,] "Average" "Data" "Male" [35,] "Average" "Data" "Female" [36,] "Average" "Data" "Female" [37,] "Average" "Data" "Male" [38,] "Average" "Data" "Female" [39,] "Average" "Data" "Male" [40,] "Low" "Data" "Male" [41,] "Average" "Data" "Male" [42,] "Average" "Data" "Male" [43,] "Low" "Data" "Male" [44,] "Average" "Data" "Female" [45,] "Average" "Data" "Female" [46,] "Low" "Data" "Male" [47,] "Low" "Data" "Male" [48,] "Average" "Data" "Male" [49,] "Average" "Data" "Male" [50,] "Average" "Data" "Male" [51,] "Average" "Data" "Male" [52,] "Average" "Data" "Female" [53,] "Average" "Data" "Male" [54,] "High" "Data" "Male" [55,] "Average" "Data" "Male" [56,] "Average" "Data" "Male" [57,] "Average" "Data" "Female" [58,] "Low" "Data" "Female" [59,] "Low" "Data" "Male" [60,] "Average" "Data" "Female" [61,] "Average" "Data" "Male" [62,] "Average" "Data" "Female" [63,] "Average" "Data" "Male" [64,] "Average" "Data" "Male" [65,] "Average" "Data" "Male" [66,] "Average" "Blog" "Female" [67,] "Average" "Blog" "Male" [68,] "Average" "Blog" "Male" [69,] "Average" "Blog" "Male" [70,] "Low" "Blog" "Female" [71,] "Average" "Blog" "Male" [72,] "Average" "Blog" "Female" [73,] "Average" "Blog" "Female" [74,] "Average" "Blog" "Male" [75,] "Average" "Blog" "Female" [76,] "Average" "Blog" "Female" [77,] "Average" "Blog" "Female" [78,] "Average" "Blog" "Male" [79,] "Average" "Blog" "Male" [80,] "Average" "Blog" "Male" [81,] "Average" "Blog" "Female" [82,] "Average" "Blog" "Female" [83,] "Average" "Blog" "Female" [84,] "Average" "Blog" "Male" [85,] "Average" "Blog" "Female" [86,] "Average" "Blog" "Female" [87,] "Average" "Blog" "Female" [88,] "High" "Blog" "Male" [89,] "Average" "Blog" "Male" [90,] "High" "Blog" "Female" [91,] "Average" "Blog" "Male" [92,] "Average" "Blog" "Female" [93,] "Average" "Blog" "Male" [94,] "Average" "Blog" "Female" [95,] "Average" "Blog" "Male" [96,] "Average" "Blog" "Female" [97,] "Average" "Blog" "Female" [98,] "Average" "Blog" "Male" [99,] "Average" "Blog" "Male" [100,] "Average" "Blog" "Female" [101,] "Average" "Blog" "Male" [102,] "Average" "Blog" "Female" [103,] "Average" "Blog" "Male" [104,] "High" "Blog" "Female" [105,] "Average" "Blog" "Male" [106,] "Average" "Blog" "Male" [107,] "Average" "Blog" "Male" [108,] "High" "Blog" "Female" [109,] "Average" "Blog" "Female" [110,] "Average" "Blog" "Male" [111,] "Average" "Blog" "Male" [112,] "Average" "Blog" "Male" [113,] "Average" "Blog" "Male" [114,] "Average" "Blog" "Male" [115,] "Average" "Blog" "Male" [116,] "Average" "Blog" "Male" > (table1 <- table(z[,cat1],z[,cat2])) Blog Data Average 46 50 High 4 2 Low 1 13 > (V1<-dimnames(y)[[1]][cat1]) [1] "Score" > (V2<-dimnames(y)[[1]][cat2]) [1] "Treatment" > postscript(file="/var/fisher/rcomp/tmp/1rrzr1352547284.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > assoc(ftable(z[,cat1],z[,cat2],row.vars=1,dnn=c(V1,V2)),shade=T) > dev.off() null device 1 > > #Note: the /var/fisher/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab > load(file="/var/fisher/rcomp/createtable") > > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Tabulation of Results',ncol(table1)+1,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,paste(V1,' x ', V2),ncol(table1)+1,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a, ' ', 1,TRUE) > for(nc in 1:ncol(table1)){ + a<-table.element(a, colnames(table1)[nc], 1, TRUE) + } > a<-table.row.end(a) > for(nr in 1:nrow(table1) ){ + a<-table.element(a, rownames(table1)[nr], 1, TRUE) + for(nc in 1:ncol(table1) ){ + a<-table.element(a, table1[nr, nc], 1, FALSE) + } + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/fisher/rcomp/tmp/2d72a1352547284.tab") > (cst<-chisq.test(table1, simulate.p.value=simulate.p.value) ) Pearson's Chi-squared test data: table1 X-squared = 9.5688, df = 2, p-value = 0.008359 Warning message: In chisq.test(table1, simulate.p.value = simulate.p.value) : Chi-squared approximation may be incorrect > if (par3 == 'McNemar Chi-Squared') { + (cst <- mcnemar.test(table1)) + } > if (par3=='Fisher Exact Test') { + (cst <- fisher.test(table1)) + } > if ((par3 != 'McNemar Chi-Squared') & (par3 != 'Fisher Exact Test')) { + a<-table.start() + a<-table.row.start(a) + a<-table.element(a,'Tabulation of Expected Results',ncol(table1)+1,TRUE) + a<-table.row.end(a) + a<-table.row.start(a) + a<-table.element(a,paste(V1,' x ', V2),ncol(table1)+1,TRUE) + a<-table.row.end(a) + a<-table.row.start(a) + a<-table.element(a, ' ', 1,TRUE) + for(nc in 1:ncol(table1)){ + a<-table.element(a, colnames(table1)[nc], 1, TRUE) + } + a<-table.row.end(a) + for(nr in 1:nrow(table1) ){ + a<-table.element(a, rownames(table1)[nr], 1, TRUE) + for(nc in 1:ncol(table1) ){ + a<-table.element(a, round(cst$expected[nr, nc], digits=2), 1, FALSE) + } + a<-table.row.end(a) + } + a<-table.end(a) + table.save(a,file="/var/fisher/rcomp/tmp/3ki2f1352547284.tab") + } > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Statistical Results',2,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a, cst$method, 2,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > if (par3=='Pearson Chi-Squared') a<-table.element(a, 'Pearson Chi Square Statistic', 1, TRUE) > if (par3=='Exact Pearson Chi-Squared by Simulation') a<-table.element(a, 'Exact Pearson Chi Square Statistic', 1, TRUE) > if (par3=='McNemar Chi-Squared') a<-table.element(a, 'McNemar Chi Square Statistic', 1, TRUE) > if (par3=='Fisher Exact Test') a<-table.element(a, 'Odds Ratio', 1, TRUE) > if (par3=='Fisher Exact Test') { + if ((ncol(table1) == 2) & (nrow(table1) == 2)) { + a<-table.element(a, round(cst$estimate, digits=2), 1,FALSE) + } else { + a<-table.element(a, '--', 1,FALSE) + } + } else { + a<-table.element(a, round(cst$statistic, digits=2), 1,FALSE) + } > a<-table.row.end(a) > if(!simulate.p.value){ + if(par3!='Fisher Exact Test') { + a<-table.row.start(a) + a<-table.element(a, 'Degrees of Freedom', 1, TRUE) + a<-table.element(a, cst$parameter, 1,FALSE) + a<-table.row.end(a) + } + } > a<-table.row.start(a) > a<-table.element(a, 'P value', 1, TRUE) > a<-table.element(a, round(cst$p.value, digits=2), 1,FALSE) > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/fisher/rcomp/tmp/4j2z91352547284.tab") > > try(system("convert tmp/1rrzr1352547284.ps tmp/1rrzr1352547284.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 1.481 0.238 1.698