R version 3.0.2 (2013-09-25) -- "Frisbee Sailing" Copyright (C) 2013 The R Foundation for Statistical Computing 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(1.14,0.88,0.85,0.97,0.88,0.86,-0.27,-0.28,-0.21,0.08,0.09,0.02,1.07,0.86,0.82,0.86,0.87,0.84,0.18,0.22,0.26,-0.12,-0.16,-0.22,0.92,0.79,0.78,0.52,0.6,0.62,1.15,0.91,0.88,0.87,0.84,0.81,0.59,0.64,0.62,0.75,0.82,0.81,1.05,0.86,0.83,0.78,0.83,0.8,-0.49,-0.53,-0.47,-0.66,-0.71,-0.68,0.98,0.88,0.84,0.92,0.83,0.8,0.74,0.81,0.78,0.65,0.72,0.71,0.51,0.6,0.62,0.41,0.56,0.57,0.6,0.64,0.61,0.47,0.53,0.52,0.42,0.53,0.53,0.4,0.46,0.45,0.72,0.69,0.66,0.48,0.58,0.57,0.35,0.53,0.49,0.21,0.31,0.32,0.58,0.7,0.67,0.65,0.78,0.78,0.62,0.72,0.71,0.59,0.73,0.78,0.54,0.63,0.63,0.34,0.43,0.4,0.08,0.09,0.13,-0.05,-0.06,-0.02),dim=c(6,20),dimnames=list(c('mean0','sum0','count0','mean1','sum1','count1'),1:20)) > y <- array(NA,dim=c(6,20),dimnames=list(c('mean0','sum0','count0','mean1','sum1','count1'),1:20)) > for (i in 1:dim(x)[1]) + { + for (j in 1:dim(x)[2]) + { + y[i,j] <- as.numeric(x[i,j]) + } + } > par1 = 'pearson' > main = 'Scatter Plots and p-values' > par1 <- 'pearson' > #'GNU S' R Code compiled by R2WASP v. 1.2.327 () > #Author: root > #To cite this work: Patrick Wessa, (2013), Multivariate Correlation Matrix (v1.0.7) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/Patrick.Wessa/rwasp_pairs.wasp/ > #Source of accompanying publication: > # > panel.tau <- function(x, y, digits=2, prefix='', cex.cor) + { + usr <- par('usr'); on.exit(par(usr)) + par(usr = c(0, 1, 0, 1)) + rr <- cor.test(x, y, method=par1) + r <- round(rr$p.value,2) + txt <- format(c(r, 0.123456789), digits=digits)[1] + txt <- paste(prefix, txt, sep='') + if(missing(cex.cor)) cex <- 0.5/strwidth(txt) + text(0.5, 0.5, txt, cex = cex) + } > panel.hist <- function(x, ...) + { + usr <- par('usr'); on.exit(par(usr)) + par(usr = c(usr[1:2], 0, 1.5) ) + h <- hist(x, plot = FALSE) + breaks <- h$breaks; nB <- length(breaks) + y <- h$counts; y <- y/max(y) + rect(breaks[-nB], 0, breaks[-1], y, col='grey', ...) + } > postscript(file="/var/fisher/rcomp/tmp/13hwy1381935806.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > pairs(t(y),diag.panel=panel.hist, upper.panel=panel.smooth, lower.panel=panel.tau, main=main) > 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") > > n <- length(y[,1]) > n [1] 6 > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,paste('Correlations for all pairs of data series (method=',par1,')',sep=''),n+1,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,' ',header=TRUE) > for (i in 1:n) { + a<-table.element(a,dimnames(t(x))[[2]][i],header=TRUE) + } > a<-table.row.end(a) > for (i in 1:n) { + a<-table.row.start(a) + a<-table.element(a,dimnames(t(x))[[2]][i],header=TRUE) + for (j in 1:n) { + r <- cor.test(y[i,],y[j,],method=par1) + a<-table.element(a,round(r$estimate,3)) + } + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/fisher/rcomp/tmp/2630o1381935806.tab") > ncorrs <- (n*n -n)/2 > mycorrs <- array(0, dim=c(10,3)) > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Correlations for all pairs of data series with p-values',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'pair',1,TRUE) > a<-table.element(a,'Pearson r',1,TRUE) > a<-table.element(a,'Spearman rho',1,TRUE) > a<-table.element(a,'Kendall tau',1,TRUE) > a<-table.row.end(a) > cor.test(y[1,],y[2,],method=par1) Pearson's product-moment correlation data: y[1, ] and y[2, ] t = 14.3886, df = 18, p-value = 2.581e-11 alternative hypothesis: true correlation is not equal to 0 95 percent confidence interval: 0.8976718 0.9840216 sample estimates: cor 0.9591724 > for (i in 1:(n-1)) + { + for (j in (i+1):n) + { + a<-table.row.start(a) + dum <- paste(dimnames(t(x))[[2]][i],';',dimnames(t(x))[[2]][j],sep='') + a<-table.element(a,dum,header=TRUE) + rp <- cor.test(y[i,],y[j,],method='pearson') + a<-table.element(a,round(rp$estimate,4)) + rs <- cor.test(y[i,],y[j,],method='spearman') + a<-table.element(a,round(rs$estimate,4)) + rk <- cor.test(y[i,],y[j,],method='kendall') + a<-table.element(a,round(rk$estimate,4)) + a<-table.row.end(a) + a<-table.row.start(a) + a<-table.element(a,'p-value',header=T) + a<-table.element(a,paste('(',round(rp$p.value,4),')',sep='')) + a<-table.element(a,paste('(',round(rs$p.value,4),')',sep='')) + a<-table.element(a,paste('(',round(rk$p.value,4),')',sep='')) + a<-table.row.end(a) + for (iii in 1:10) { + iiid100 <- iii / 100 + if (rp$p.value < iiid100) mycorrs[iii, 1] = mycorrs[iii, 1] + 1 + if (rs$p.value < iiid100) mycorrs[iii, 2] = mycorrs[iii, 2] + 1 + if (rk$p.value < iiid100) mycorrs[iii, 3] = mycorrs[iii, 3] + 1 + } + } + } There were 30 warnings (use warnings() to see them) > a<-table.end(a) > table.save(a,file="/var/fisher/rcomp/tmp/3z9fj1381935806.tab") > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Meta Analysis of Correlation Tests',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Number of significant by total number of Correlations',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Type I error',1,TRUE) > a<-table.element(a,'Pearson r',1,TRUE) > a<-table.element(a,'Spearman rho',1,TRUE) > a<-table.element(a,'Kendall tau',1,TRUE) > a<-table.row.end(a) > for (iii in 1:10) { + iiid100 <- iii / 100 + a<-table.row.start(a) + a<-table.element(a,round(iiid100,2),header=T) + a<-table.element(a,round(mycorrs[iii,1]/ncorrs,2)) + a<-table.element(a,round(mycorrs[iii,2]/ncorrs,2)) + a<-table.element(a,round(mycorrs[iii,3]/ncorrs,2)) + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/fisher/rcomp/tmp/4h65g1381935807.tab") > > try(system("convert tmp/13hwy1381935806.ps tmp/13hwy1381935806.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 0.998 0.150 1.129