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 <- c(6195800,6172725,6149325,6100900,6579950,6554600,6195800,5957250,5980325,5980325,6006000,6052150,6123975,6123975,6077825,5957250,6579950,6674850,6531525,6195800,6339450,6123975,6221150,6267625,6316050,6195800,6221150,6052150,6579950,6746675,6603350,6339450,6626425,6316050,6603350,6579950,6651775,6387875,6674850,6651775,7082400,6985225,6603350,6410950,6674850,6316050,6579950,6626425,6723600,6508450,6626425,6698250,6962150,6746675,6459700,6149325,6436625,5646875,6029075,6244225,6459700,6149325,6149325,6149325,6316050,6077825,5765175,5503550,5693350,4952350,5406375,5670275,5718700,5454800,5477875,5406375,5646875,5477875,5144750,4903925,5311150,4426825,5001100,5262725,5262725,4952350,4665375,4642300,4903925,4665375,4211675,3899025,4234750,3445325,4162925,4544800,4665375,4401475,4068025,4306575,4401475,4329650,3611725,3278600,3516825,2799225,3540225,3804125,4019275,3660475,3324750,3516825,3611725,3421925,2704325,2391675,2678650,1889225,2750475,3278600) > par1 = '12' > par1 <- '12' > #'GNU S' R Code compiled by R2WASP v. 1.2.291 () > #Author: root > #To cite this work: Wessa P. (2012), Standard Deviation-Mean Plot (v1.0.6) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_smp.wasp/ > #Source of accompanying publication: Office for Research, Development, and Education > # > par1 <- as.numeric(par1) > (n <- length(x)) [1] 120 > (np <- floor(n / par1)) [1] 10 > arr <- array(NA,dim=c(par1,np)) > j <- 0 > k <- 1 > for (i in 1:(np*par1)) + { + j = j + 1 + arr[j,k] <- x[i] + if (j == par1) { + j = 0 + k=k+1 + } + } > arr [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [1,] 6195800 6123975 6316050 6651775 6723600 6459700 5718700 5262725 4665375 [2,] 6172725 6123975 6195800 6387875 6508450 6149325 5454800 4952350 4401475 [3,] 6149325 6077825 6221150 6674850 6626425 6149325 5477875 4665375 4068025 [4,] 6100900 5957250 6052150 6651775 6698250 6149325 5406375 4642300 4306575 [5,] 6579950 6579950 6579950 7082400 6962150 6316050 5646875 4903925 4401475 [6,] 6554600 6674850 6746675 6985225 6746675 6077825 5477875 4665375 4329650 [7,] 6195800 6531525 6603350 6603350 6459700 5765175 5144750 4211675 3611725 [8,] 5957250 6195800 6339450 6410950 6149325 5503550 4903925 3899025 3278600 [9,] 5980325 6339450 6626425 6674850 6436625 5693350 5311150 4234750 3516825 [10,] 5980325 6123975 6316050 6316050 5646875 4952350 4426825 3445325 2799225 [11,] 6006000 6221150 6603350 6579950 6029075 5406375 5001100 4162925 3540225 [12,] 6052150 6267625 6579950 6626425 6244225 5670275 5262725 4544800 3804125 [,10] [1,] 4019275 [2,] 3660475 [3,] 3324750 [4,] 3516825 [5,] 3611725 [6,] 3421925 [7,] 2704325 [8,] 2391675 [9,] 2678650 [10,] 1889225 [11,] 2750475 [12,] 3278600 > arr.mean <- array(NA,dim=np) > arr.sd <- array(NA,dim=np) > arr.range <- array(NA,dim=np) > for (j in 1:np) + { + arr.mean[j] <- mean(arr[,j],na.rm=TRUE) + arr.sd[j] <- sd(arr[,j],na.rm=TRUE) + arr.range[j] <- max(arr[,j],na.rm=TRUE) - min(arr[,j],na.rm=TRUE) + } > arr.mean [1] 6160429 6268112 6431696 6637123 6435948 5857719 5269415 4465879 3893608 [10] 3103994 > arr.sd [1] 208766.6 221515.4 217278.4 222304.7 366082.5 436468.7 358941.8 500284.2 [9] 558634.5 618254.3 > arr.range [1] 622700 717600 694525 766350 1315275 1507350 1291875 1817400 1866150 [10] 2130050 > (lm1 <- lm(arr.sd~arr.mean)) Call: lm(formula = arr.sd ~ arr.mean) Coefficients: (Intercept) arr.mean 9.878e+05 -1.132e-01 > (lnlm1 <- lm(log(arr.sd)~log(arr.mean))) Call: lm(formula = log(arr.sd) ~ log(arr.mean)) Coefficients: (Intercept) log(arr.mean) 34.203 -1.386 > (lm2 <- lm(arr.range~arr.mean)) Call: lm(formula = arr.range ~ arr.mean) Coefficients: (Intercept) arr.mean 3.444e+06 -3.983e-01 > postscript(file="/var/wessaorg/rcomp/tmp/1xfmk1439579100.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > plot(arr.mean,arr.sd,main='Standard Deviation-Mean Plot',xlab='mean',ylab='standard deviation') > dev.off() null device 1 > postscript(file="/var/wessaorg/rcomp/tmp/2txmh1439579100.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > plot(arr.mean,arr.range,main='Range-Mean Plot',xlab='mean',ylab='range') > 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,'Standard Deviation-Mean Plot',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Section',header=TRUE) > a<-table.element(a,'Mean',header=TRUE) > a<-table.element(a,'Standard Deviation',header=TRUE) > a<-table.element(a,'Range',header=TRUE) > a<-table.row.end(a) > for (j in 1:np) { + a<-table.row.start(a) + a<-table.element(a,j,header=TRUE) + a<-table.element(a,arr.mean[j]) + a<-table.element(a,arr.sd[j] ) + a<-table.element(a,arr.range[j] ) + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/wessaorg/rcomp/tmp/3f8pi1439579100.tab") > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Regression: S.E.(k) = alpha + beta * Mean(k)',2,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'alpha',header=TRUE) > a<-table.element(a,lm1$coefficients[[1]]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'beta',header=TRUE) > a<-table.element(a,lm1$coefficients[[2]]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'S.D.',header=TRUE) > a<-table.element(a,summary(lm1)$coefficients[2,2]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'T-STAT',header=TRUE) > a<-table.element(a,summary(lm1)$coefficients[2,3]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'p-value',header=TRUE) > a<-table.element(a,summary(lm1)$coefficients[2,4]) > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/wessaorg/rcomp/tmp/4i7gp1439579100.tab") > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Regression: ln S.E.(k) = alpha + beta * ln Mean(k)',2,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'alpha',header=TRUE) > a<-table.element(a,lnlm1$coefficients[[1]]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'beta',header=TRUE) > a<-table.element(a,lnlm1$coefficients[[2]]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'S.D.',header=TRUE) > a<-table.element(a,summary(lnlm1)$coefficients[2,2]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'T-STAT',header=TRUE) > a<-table.element(a,summary(lnlm1)$coefficients[2,3]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'p-value',header=TRUE) > a<-table.element(a,summary(lnlm1)$coefficients[2,4]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Lambda',header=TRUE) > a<-table.element(a,1-lnlm1$coefficients[[2]]) > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/wessaorg/rcomp/tmp/5tkjd1439579100.tab") > > try(system("convert tmp/1xfmk1439579100.ps tmp/1xfmk1439579100.png",intern=TRUE)) character(0) > try(system("convert tmp/2txmh1439579100.ps tmp/2txmh1439579100.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 1.012 0.206 1.218