R version 3.0.2 (2013-09-25) -- "Frisbee Sailing"
Copyright (C) 2013 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-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(4,2,3,2,4,1,3,2,4,4,4,4,4,4,4,3,3,2,4,3,4,4,4,4,3,4,3,4,3,4,3,4,4,4,3,4,4,3,4,4,4,3,4,4,3,3,3,4,4,3,4,3,4,4,4,3,4,4,4,3,4,4,4,3,3,3,3,3,3,3,3,4,2,2,1,1,4,3,3,1,4,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,3,3,4,4,3,2,4,4,2,4,4,3,2,4,4,3,2,4,4,4,4,4,4,4,4,4,4,4,4,3,2,4,3,4,3,2,4,4,3,4,2,4,4,1,4,4,4,4,4,3,2,4,2,2,4,4,4,3,4,3,4,4,4,4,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,3,2,3,3,4,4,4,4,4,4,4,4,4,4,4,3,4,3,4,3,4,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,3,4,4,4,4,4,4,4,3,4,4,4,2,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,3,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,3,2,4,4,3,4,3,3,2,3,4,4,4,3,4,4,4,2,2,4,3,4,2,4,4,4,4,4,4,4,4,1,4,4,3,4,4,2,4,4,4,4,4,3,4,1,4,3,4,4,4,4,4,3,4,4,4,4,4,4),dim=c(9,39),dimnames=list(c('A1','A2','A3','A4','A5','A6','A7','A8','A9'),1:39))
> y <- array(NA,dim=c(9,39),dimnames=list(c('A1','A2','A3','A4','A5','A6','A7','A8','A9'),1:39))
> 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 '
> par1 <- '1 2 3 4 '
> #'GNU S' R Code compiled by R2WASP v. 1.2.291 ()
> #Author: root
> #To cite this work: Wessa P., (2012), Survey Scores (v1.0.3) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_surveyscores.wasp/
> #Source of accompanying publication:
> #
> 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.32 52.0 0.5 0.98
Q2 1.06 42.5 1.0 0.95
Q3 1.06 44.5 3.0 0.87
Q4 0.88 41.0 6.5 0.73
Q5 1.12 46.5 3.0 0.88
Q6 1.01 42.5 3.0 0.87
Q7 1.27 49.5 0.0 1.00
Q8 0.81 38.0 6.5 0.71
Q9 1.17 47.5 2.0 0.92
Count of
positives (Pc) Count of
negatives (Nc) (Pc-Nc)/(Pc+Nc)
Q1 38 1 0.95
Q2 37 2 0.90
Q3 35 4 0.79
Q4 32 7 0.64
Q5 35 4 0.79
Q6 35 4 0.79
Q7 39 0 1.00
Q8 32 7 0.64
Q9 35 4 0.79
>
> #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,'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/wessaorg/rcomp/tmp/1tub51423141768.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/wessaorg/rcomp/tmp/2tu5l1423141768.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')
Warning message:
In cor.test.default(x, y, method = method) :
Cannot compute exact p-value with ties
> a<-table.element(a,docor(myresult[,1],myresult[,4],method='kendall'),align='right')
Warning message:
In cor.test.default(x, y, method = method) :
Cannot compute exact p-value with ties
> a<-table.element(a,docor(myresult[,1],myresult[,7],method='kendall'),align='right')
Warning message:
In cor.test.default(x, y, method = method) :
Cannot compute exact p-value with ties
> 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')
Warning message:
In cor.test.default(x, y, method = method) :
Cannot compute exact p-value with ties
> a<-table.element(a,docor(myresult[,4],myresult[,4],method='kendall'),align='right')
Warning message:
In cor.test.default(x, y, method = method) :
Cannot compute exact p-value with ties
> a<-table.element(a,docor(myresult[,4],myresult[,7],method='kendall'),align='right')
Warning message:
In cor.test.default(x, y, method = method) :
Cannot compute exact p-value with ties
> 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')
Warning message:
In cor.test.default(x, y, method = method) :
Cannot compute exact p-value with ties
> a<-table.element(a,docor(myresult[,7],myresult[,4],method='kendall'),align='right')
Warning message:
In cor.test.default(x, y, method = method) :
Cannot compute exact p-value with ties
> a<-table.element(a,docor(myresult[,7],myresult[,7],method='kendall'),align='right')
Warning message:
In cor.test.default(x, y, method = method) :
Cannot compute exact p-value with ties
> a<-table.row.end(a)
> a<-table.end(a)
> table.save(a,file="/var/wessaorg/rcomp/tmp/3jt3e1423141768.tab")
>
>
>
> proc.time()
user system elapsed
0.286 0.046 0.324