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(7,7,7,5,5,5,5,5,6,5,4,4,5,5,5,5,6,6,6,7,6,5,5,6,6,7,7,6,6,5,5,6,4,5,4,6,6,6,6,6,6,6,7,7,3,3,4,3,5,5,6,6,5,5,5,6,2,1,2,2,3,4,5,5,6,6,6,7,6,6,6,7,5,4,5,5,7,5,5,6,5,5,6,6,5,6,5,5,5,3,5,5,5,6,5,6,5,4,5,4,6,5,7,5,5,5,5,5,5,3,3,4,6,5,5,5,4,4,4,6,4,4,6,5,6,5,5,6,3,4,4,5,6,2,5,5,5,4,5,6,6,6,6,6,7,6,5,6,4,4,5,5,5,6,5,5,4,5,4,4,5,6,5,6,3,3,5,5,5,5,5,6,6,6,6,6,6,6,6,6,4,4,4,4,4,4,4,4,6,2,5,5,5,3,6,6,6,5,6,7,4,4,4,5,4,5,6,4,5,5,5,5,3,4,4,4,6,4,6,6,6,6,6,5,4,4,4,4,5,4,5,5,5,3,5,6,4,5,6,6,6,6,6,6,5,5,6,6,4,4,5,5,6,6,5,7,5,5,7,7,6,5,6,5,5,4,7,7,6,4,6,6,5,5,5,5,4,5,4,5,6,6,6,7,5,3,3,5,5,5,5,5,3,4,5,3,5,4,5,5,4,5,5,5,5,2,5,4,5,5,3,4,7,7,7,7,7,6,6,6,5,5,4,6,4,3,4,5,6,5,6,6,5,6,5,5,5,6,6,6,4,4,5,5,5,5,5,5,2,3,2,2,7,5,6,7,4,6,5,5,5,5,5,6,5,5,6,6,7,6,7,7,2,4,6,6,4,4,4,4,6,4,6,6,5,5,6,4,5,5,5,5),dim=c(4,98),dimnames=list(c('Q2','Q9','Q16','Q23'),1:98)) > y <- array(NA,dim=c(4,98),dimnames=list(c('Q2','Q9','Q16','Q23'),1:98)) > for (i in 1:dim(x)[1]) + { + for (j in 1:dim(x)[2]) + { + y[i,j] <- as.numeric(x[i,j]) + } + } > par1 = '1 2 3 4 5 6 7' > docor <- function(x,y,method) { + r <- cor.test(x,y,method=method) + paste(round(r$estimate,3),' (',round(r$p.value,3),')',sep='') + } > x <- t(x) > nx <- length(x[,1]) > cx <- length(x[1,]) > mymedian <- median(as.numeric(strsplit(par1,' ')[[1]])) > myresult <- array(NA, dim = c(cx,7)) > rownames(myresult) <- paste('Q',1:cx,sep='') > colnames(myresult) <- c('mean','Sum of
positives (Ps)','Sum of
negatives (Ns)', '(Ps-Ns)/(Ps+Ns)', 'Count of
positives (Pc)', 'Count of
negatives (Nc)', '(Pc-Nc)/(Pc+Nc)') > for (i in 1:cx) { + spos <- 0 + sneg <- 0 + cpos <- 0 + cneg <- 0 + for (j in 1:nx) { + if (!is.na(x[j,i])) { + myx <- as.numeric(x[j,i]) - mymedian + if (myx > 0) { + spos = spos + myx + cpos = cpos + 1 + } + if (myx < 0) { + sneg = sneg + abs(myx) + cneg = cneg + 1 + } + } + } + myresult[i,1] <- round(mean(as.numeric(x[,i]),na.rm=T)-mymedian,2) + myresult[i,2] <- spos + myresult[i,3] <- sneg + myresult[i,4] <- round((spos - sneg) / (spos + sneg),2) + myresult[i,5] <- cpos + myresult[i,6] <- cneg + myresult[i,7] <- round((cpos - cneg) / (cpos + cneg),2) + } > myresult mean Sum of
positives (Ps) Sum of
negatives (Ns) (Ps-Ns)/(Ps+Ns) Q1 1.02 112 12 0.81 Q2 0.72 89 18 0.66 Q3 1.18 123 7 0.89 Q4 1.36 139 6 0.92 Count of
positives (Pc) Count of
negatives (Nc) (Pc-Nc)/(Pc+Nc) Q1 71 9 0.78 Q2 61 13 0.65 Q3 78 5 0.88 Q4 81 4 0.91 > > #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,'Summary of survey scores (median of Likert score was subtracted)',8,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Question',header=TRUE) > for (i in 1:7) { + a<-table.element(a,colnames(myresult)[i],header=TRUE) + } > a<-table.row.end(a) > for (i in 1:cx) { + a<-table.row.start(a) + a<-table.element(a,i,header=TRUE) + for (j in 1:7) { + a<-table.element(a,myresult[i,j],align='right') + } + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/fisher/rcomp/tmp/1819a1382286848.tab") > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Pearson correlations of survey scores (and p-values)',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'',header=TRUE) > a<-table.element(a,'mean',header=TRUE) > a<-table.element(a,'(Ps-Ns)/(Ps+Ns)',header=TRUE) > a<-table.element(a,'(Pc-Nc)/(Pc+Nc)',header=TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'mean',header=TRUE) > a<-table.element(a,docor(myresult[,1],myresult[,1],method='pearson'),align='right') > a<-table.element(a,docor(myresult[,1],myresult[,4],method='pearson'),align='right') > a<-table.element(a,docor(myresult[,1],myresult[,7],method='pearson'),align='right') > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'(Ps-Ns)/(Ps+Ns)',header=TRUE) > a<-table.element(a,docor(myresult[,4],myresult[,1],method='pearson'),align='right') > a<-table.element(a,docor(myresult[,4],myresult[,4],method='pearson'),align='right') > a<-table.element(a,docor(myresult[,4],myresult[,7],method='pearson'),align='right') > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'(Pc-Nc)/(Pc+Nc)',header=TRUE) > a<-table.element(a,docor(myresult[,7],myresult[,1],method='pearson'),align='right') > a<-table.element(a,docor(myresult[,7],myresult[,4],method='pearson'),align='right') > a<-table.element(a,docor(myresult[,7],myresult[,7],method='pearson'),align='right') > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/fisher/rcomp/tmp/27f0q1382286848.tab") > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Kendall tau rank correlations of survey scores (and p-values)',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'',header=TRUE) > a<-table.element(a,'mean',header=TRUE) > a<-table.element(a,'(Ps-Ns)/(Ps+Ns)',header=TRUE) > a<-table.element(a,'(Pc-Nc)/(Pc+Nc)',header=TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'mean',header=TRUE) > a<-table.element(a,docor(myresult[,1],myresult[,1],method='kendall'),align='right') > a<-table.element(a,docor(myresult[,1],myresult[,4],method='kendall'),align='right') > a<-table.element(a,docor(myresult[,1],myresult[,7],method='kendall'),align='right') > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'(Ps-Ns)/(Ps+Ns)',header=TRUE) > a<-table.element(a,docor(myresult[,4],myresult[,1],method='kendall'),align='right') > a<-table.element(a,docor(myresult[,4],myresult[,4],method='kendall'),align='right') > a<-table.element(a,docor(myresult[,4],myresult[,7],method='kendall'),align='right') > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'(Pc-Nc)/(Pc+Nc)',header=TRUE) > a<-table.element(a,docor(myresult[,7],myresult[,1],method='kendall'),align='right') > a<-table.element(a,docor(myresult[,7],myresult[,4],method='kendall'),align='right') > a<-table.element(a,docor(myresult[,7],myresult[,7],method='kendall'),align='right') > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/fisher/rcomp/tmp/34zxp1382286848.tab") > > > > proc.time() user system elapsed 0.338 0.081 0.396