R version 2.13.0 (2011-04-13) Copyright (C) 2011 The R Foundation for Statistical Computing ISBN 3-900051-07-0 Platform: i486-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(7,0,-1,-2,0,0,-1,-1,0,-4,-5,0,-1,1,0,-5,0,-9,0,1,-5,-5,0,-1,2,-4,-2,1,-2,2,0,3,0,-1,5,0,2,2,1,-2,4,0,-1,-2,-2,3,0,-3,-1,1,3,-5,1,1,1,-1,2,5,1,-1,1,-1,1,0,-1,-5,0,-1,-5,4,-1,0,1,-1,1,-1,5,-1,0,-2,0,-4,-2,2,1,-2,0,-2,-1,1,0,2,0,0,0,-6,0,0,0,0,-1,0,2,2,1,-1,2,-1,0,1,4,-4,-2,-2,-1,-1,0,-1,0,2,0,-2,0,2,0,-4,0,1,1,-2,3,1,3,1,0,0,2,-2,-1,3,-2,-1,-1,-1,-2,0,0,2,0,0,4,1,3,-5,-1,3,0,3,2,3,4,-1,1,-2,1,-0.6,0,-0.6,1,-0.6,1,-0.6,0,-0.6,1,-0.6,0,-0.6,3,-0.6,4,-0.6,0,-0.6,5,-0.6,4,-0.6,1,-0.6,0,-0.6,0,-0.6,1,-0.6),dim=c(2,98),dimnames=list(c('female','male'),1:98)) > y <- array(NA,dim=c(2,98),dimnames=list(c('female','male'),1:98)) > for (i in 1:dim(x)[1]) + { + for (j in 1:dim(x)[2]) + { + y[i,j] <- as.numeric(x[i,j]) + } + } > par3 = '0' > par2 = 'TRUE' > par1 = '3' > ylab = 'Difference in weight' > xlab = 'gender' > main = 'Weight' > par3 <- '0' > par2 <- 'TRUE' > par1 <- '3' > #'GNU S' R Code compiled by R2WASP v. 1.2.291 () > #Author: aston2 > #To cite this work: Ian E. Holliday, 2012, CARE Boxplots and Scatterplot Matrix (v1.0.3) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/Ian.Holliday/rwasp_CARE%20Data%20Boxplot.wasp/ > #Source of accompanying publication: > # > par1 <- as.numeric(par1) #colour > par2<- as.logical(par2) # Notches ? > par3<-as.numeric(par3) # % trim > if(par3>45){par3<-45;warning('trim limited to 45%')} > if(par3<0){par3<-0;warning('negative trim makes no sense. Trim is zero.')} > lotrm<-as.integer(length(y[1,])*par3/100)+1 > hitrm<-as.integer(length(y[1,])*(100-par3)/100) > y1<-array(dim=c(dim(y)[1], hitrm-lotrm+1), dimnames=list(dimnames(y)[[1]], 1:(hitrm-lotrm+1) )) > for(i in 1:dim(y)[1]){ + tmp<-order(y[i,]) + y1[i,]<- y[i, tmp[lotrm:hitrm] ] + } > postscript(file="/var/wessaorg/rcomp/tmp/1znhr1338380585.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > pairs(t(y)) > dev.off() null device 1 > y<-y1 > z <- as.data.frame(t(y)) > postscript(file="/var/wessaorg/rcomp/tmp/2di3v1338380585.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > (r<-boxplot(z ,xlab=xlab,ylab=ylab,main=main,notch=par2,col=par1)) $stats [,1] [,2] [1,] -1 -4.0 [2,] 0 -1.0 [3,] 0 -0.6 [4,] 1 1.0 [5,] 2 4.0 $n [1] 98 98 $conf [,1] [,2] [1,] -0.1596041 -0.9192082 [2,] 0.1596041 -0.2807918 $out [1] -5 -5 -5 -2 -2 -2 -2 -2 -2 -2 3 3 3 3 3 4 4 4 4 4 4 5 5 5 7 [26] -9 -6 -5 -5 -5 -5 -5 5 $group [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 $names [1] "female" "male" Warning message: In bxp(list(stats = c(-1, 0, 0, 1, 2, -4, -1, -0.6, 1, 4), n = c(98, : some notches went outside hinges ('box'): maybe set notch=FALSE > dev.off() null device 1 > > #Note: the /var/wessaorg/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab > load(file="/var/wessaorg/rcomp/createtable") > > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,hyperlink('http://www.xycoon.com/overview.htm','Boxplot statistics','Boxplot overview'),6,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Variable',1,TRUE) > a<-table.element(a,hyperlink('http://www.xycoon.com/lower_whisker.htm','lower whisker','definition of lower whisker'),1,TRUE) > a<-table.element(a,hyperlink('http://www.xycoon.com/lower_hinge.htm','lower hinge','definition of lower hinge'),1,TRUE) > a<-table.element(a,hyperlink('http://www.xycoon.com/central_tendency.htm','median','definitions about measures of central tendency'),1,TRUE) > a<-table.element(a,hyperlink('http://www.xycoon.com/upper_hinge.htm','upper hinge','definition of upper hinge'),1,TRUE) > a<-table.element(a,hyperlink('http://www.xycoon.com/upper_whisker.htm','upper whisker','definition of upper whisker'),1,TRUE) > a<-table.row.end(a) > for (i in 1:length(y[,1])) + { + a<-table.row.start(a) + a<-table.element(a,dimnames(t(x))[[2]][i],1,TRUE) + for (j in 1:5) + { + a<-table.element(a,signif(r$stats[j,i], digits=4)) + } + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/wessaorg/rcomp/tmp/3a8fi1338380585.tab") > if (par2){ + a<-table.start() + a<-table.row.start(a) + a<-table.element(a,'Boxplot Notches',4,TRUE) + a<-table.row.end(a) + a<-table.row.start(a) + a<-table.element(a,'Variable',1,TRUE) + a<-table.element(a,'lower bound',1,TRUE) + a<-table.element(a,'median',1,TRUE) + a<-table.element(a,'upper bound',1,TRUE) + a<-table.row.end(a) + for (i in 1:length(y[,1])) + { + a<-table.row.start(a) + a<-table.element(a,dimnames(t(x))[[2]][i],1,TRUE) + a<-table.element(a,signif(r$conf[1,i], digits=4)) + a<-table.element(a, signif(r$stats[3,i], digits=4)) + a<-table.element(a,signif(r$conf[2,i], digits=4)) + a<-table.row.end(a) + } + a<-table.end(a) + table.save(a,file="/var/wessaorg/rcomp/tmp/4kw2r1338380585.tab") + } > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Boxplot Means',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Variable',1,TRUE) > a<-table.element(a,hyperlink('http://www.xycoon.com/trimmed_mean.htm','trimmed mean','definition of trimmed mean'),1,TRUE) > a<-table.element(a,hyperlink('http://www.xycoon.com/unbiased1.htm','unbiased SD','definition of unbiased SD'),1,TRUE) > a<-table.row.end(a) > for (i in 1:length(y[,1])) + { + a<-table.row.start(a) + a<-table.element(a,dimnames(t(x))[[2]][i],1,TRUE) + a<-table.element(a,signif(mean(z[i], trim=par3/100, na.rm=TRUE), digits=4)) + a<-table.element(a,signif(sd(z[i], na.rm=TRUE), digits=4)) + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/wessaorg/rcomp/tmp/5xp9e1338380585.tab") > > try(system("convert tmp/1znhr1338380585.ps tmp/1znhr1338380585.png",intern=TRUE)) character(0) > try(system("convert tmp/2di3v1338380585.ps tmp/2di3v1338380585.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 0.760 0.219 0.975