x <- c(20 ,25 ,15 ,15 ,25 ,25 ,25 ,21 ,30 ,25 ,20 ,40 ,13 ,30 ,25 ,20 ,25 ,20 ,25 ,20 ,20 ,15 ,15 ,12 ,20 ,5 ,20 ,15 ,25 ,22 ,20 ,22 ,25 ,20 ,20 ,35 ,30 ,25 ,20 ,20 ,20 ,25 ,25 ,15 ,20 ,35 ,25 ,25 ,30 ,23 ,10 ,22 ,25 ,25 ,22 ,30 ,20 ,25 ,25 ,22 ,25 ,25 ,25 ,22 ,25 ,12 ,18 ,20 ,20 ,22 ,30 ,25 ,22 ,20 ,50 ,30 ,25 ,20 ,30 ,22 ,25 ,30 ,22 ,25 ,22 ,22 ,25 ,25 ,25 ,20 ,22 ,15 ,20 ,30 ,20 ,25 ,30 ,35 ,22 ,12 ,30 ,15 ,10 ,30 ,9 ,25 ,20 ,20 ,35 ,25 ,35 ,30 ,12 ,25 ,15 ,25 ,25 ,20 ,20 ,6 ,15 ,40 ,20 ,40 ,25 ,25 ,20 ,15 ,15 ,22 ,24 ,22 ,20 ,25 ,25 ,25 ,35 ,40 ,20 ,22 ,22 ,20 ,25 ,25 ,18 ,25 ,20 ,25 ,30 ,20 ,22 ,35 ,22 ,25 ,25 ,25 ,25 ,22 ,23 ,35 ,15 ,25 ,18 ,22 ,25 ,25 ,28 ,30 ,20 ,25 ,25 ,30 ,22 ,30 ,10 ,10 ,25 ,20 ,22 ,25 ,25 ,15 ,22 ,25 ,25 ,28 ,22 ,30 ,25 ,20 ,25 ,25 ,20 ,30 ,20 ,30 ,50 ,19 ,20 ,28 ,20 ,25 ,35 ,25 ,25 ,15 ,16 ,20 ,20 ,25 ,30 ,20 ,25 ,25 ,25 ,20 ,20 ,25 ,25 ,30 ,22 ,20 ,25 ,25 ,18 ,18 ,20 ,25 ,25 ,30 ,25 ,20 ,25 ,20 ,20 ,20 ,22 ,18 ,22 ,20 ,15 ,25 ,25 ,20 ,25 ,15 ,22 ,25 ,25 ,15 ,12 ,25 ,30 ,22 ,15 ,22 ,25 ,12 ,18 ,30 ,25 ,25 ,40 ,24 ,25 ,15 ,25 ,20 ,25 ,25 ,25 ,20 ,30 ,20 ,25 ,30 ,22 ,25 ,25 ,25 ,50 ,19 ,50 ,25 ,35 ,20 ,20 ,20 ,20 ,20 ,25 ,25 ,25 ,20 ,20 ,20 ,20 ,25 ,18 ,25 ,22 ,22 ,30 ,30 ,8 ,20 ,25 ,30 ,50 ,22 ,20 ,10 ,25 ,25 ,25 ,25 ,18 ,25 ,20 ,25 ,30 ,18 ,20 ,25 ,22 ,22 ,20 ,20 ,25 ,20 ,20 ,20 ,20 ,25 ,20 ,10 ,20 ,25 ,30 ,25 ,50 ,30 ,30 ,50 ,15 ,25 ,25 ,22 ,20 ,22 ,30 ,25 ,18 ,22 ,22 ,30 ,40 ,25 ,20 ,10 ,20 ,9 ,15 ,20 ,15 ,20 ,30 ,12 ,15 ,12 ,20 ,15 ,12 ,25 ,20 ,25 ,25 ,25 ,30 ,20 ,25 ,15 ,15 ,22 ,10 ,15 ,10 ,20 ,25 ,20 ,20 ,38 ,20 ,20 ,20 ,40 ,25 ,25 ,30 ,25 ,10 ,20 ,25 ,12 ,15 ,25 ,20 ,22 ,22 ,20 ,25 ,25 ,25 ,15 ,40 ,20 ,20 ,16 ,25 ,15 ,20 ,25 ,20 ,30 ,50 ,20 ,25 ,20 ,30 ,30 ,25 ,25 ,12 ,25 ,25 ,25 ,20 ,20 ,20 ,15 ,20 ,25 ,15 ,25 ,50 ,30 ,20 ,20 ,25 ,12 ,15 ,20 ,20 ,35 ,22 ,15 ,18 ,30 ,22 ,12 ,12 ,20 ,20 ,15 ,25 ,15 ,20 ,20 ,25 ,18 ,30 ,20 ,25 ,25 ,25 ,20 ,20 ,25 ,20 ,22 ,15 ,15 ,22 ,20 ,10 ,25 ,20 ,20 ,15 ,12 ,20 ,5 ,20 ,15 ,15 ,25 ,25 ,25 ,15 ,25 ,22 ,25 ,20 ,18 ,22 ,25 ,35 ,25 ,25 ,25 ,35 ,30 ,22 ,30 ,50 ,15 ,25 ,24 ,20 ,25 ,25 ,25 ,12 ,15 ,22 ,25 ,25 ,25 ,25 ,15 ,20 ,20 ,15 ,35 ,30 ,20 ,22 ,65 ,20 ,25 ,22 ,20 ,25 ,25 ,20 ,25 ,15 ,20 ,12 ,15 ,10 ,25 ,15 ,30 ,35 ,25 ,25 ,25 ,25 ,25 ,40 ,40 ,25 ,25 ,20 ,25 ,25 ,22 ,25 ,30 ,25 ,25 ,30 ,25 ,25 ,30 ,25 ,25 ,20 ,22 ,22 ,20 ,25 ,22 ,25 ,22 ,40 ,25 ,25 ,25 ,22 ,20 ,35 ,20 ,35 ,25 ,22 ,25 ,25 ,25 ,25 ,25 ,40 ,25 ,30 ,25 ,20 ,25 ,25 ,30 ,22 ,22 ,20 ,15 ,15 ,25 ,25 ,20 ,20 ,15 ,25 ,15 ,20 ,22 ,25 ,15 ,15 ,18 ,5 ,15 ,25 ,18 ,40 ,25 ,25 ,20 ,30 ,20 ,25 ,25 ,25 ,22 ,22 ,25 ,25 ,30 ,25 ,25 ,25 ,25 ,20 ,20 ,25 ,25 ,25 ,25 ,20 ,30 ,25 ,22 ,30 ,20 ,20 ,30 ,25 ,25 ,30 ,20 ,25 ,25 ,24 ,25 ,30 ,18 ,15 ,22 ,22 ,25 ,22 ,22 ,25 ,15 ,20 ,22 ,18 ,35 ,20 ,20 ,20 ,25 ,25 ,30 ,15 ,25 ,22 ,26 ,25 ,20 ,25 ,25 ,25 ,22 ,25 ,25 ,20 ,22 ,30 ,15 ,30 ,25 ,20 ,25 ,25 ,35 ,22 ,20 ,25 ,20 ,20 ,18 ,20 ,22 ,25 ,10 ,20 ,25 ,20 ,20 ,30 ,25 ,20 ,15 ,20 ,25 ,10 ,20 ,25 ,22 ,22 ,25 ,25 ,15 ,25 ,20 ,10 ,25 ,16 ,25 ,35 ,25 ,15 ,25 ,25 ,30 ,25 ,10 ,22 ,20 ,25 ,20 ,20 ,25 ,22 ,18 ,30 ,19 ,25 ,20 ,25 ,20 ,25 ,20 ,22 ,12 ,30 ,12 ,22 ,25 ,25 ,25 ,25 ,30 ,30 ,10 ,22 ,22 ,25 ,20 ,22 ,20 ,25 ,20 ,15 ,25 ,20 ,25 ,20 ,30 ,15 ,40 ,25 ,20 ,22 ,22 ,30 ,20 ,40 ,20 ,25 ,20 ,25 ,20 ,50 ,50 ,25 ,25 ,40 ,30 ,22 ,30 ,20 ,25 ,25 ,30 ,25 ,25 ,20 ,18 ,18 ,28 ,25 ,22 ,15 ,40 ,40 ,12 ,12 ,18 ,12 ,25 ,26 ,18 ,25 ,22 ,15 ,25 ,15 ,15 ,15 ,25 ,15 ,12 ,22 ,20 ,20 ,25 ,20 ,12 ,9 ,15 ,12 ,15 ,25 ,20 ,20 ,15 ,15 ,30 ,21 ,25 ,22 ,22 ,50 ,15 ,25 ,15 ,25 ,22 ,18 ,50 ,20 ,50 ,20 ,20 ,30 ,25 ,20 ,22 ,25 ,50 ,40 ,25 ,25 ,25 ,25 ,30 ,40 ,25 ,30 ,20) par4 = 'P1 P5 Q1 Q3 P95 P99' par3 = '0' par2 = '5' par1 = '50' par4 <- 'P1 P5 Q1 Q3 P95 P99' par3 <- '0' par2 <- '5' par1 <- '50' #'GNU S' R Code compiled by R2WASP v. 1.2.327 () #Author: root #To cite this work: Wessa P., (2013), Bootstrap Plot for Central Tendency (v1.0.13) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_bootstrapplot1.wasp/ #Source of accompanying publication: Office for Research, Development, and Education # par1 <- as.numeric(par1) par2 <- as.numeric(par2) if (par3 == '0') bw <- NULL if (par3 != '0') bw <- as.numeric(par3) if (par1 < 10) par1 = 10 if (par1 > 5000) par1 = 5000 library(modeest) library(lattice) library(boot) boot.stat <- function(s,i) { s.mean <- mean(s[i]) s.median <- median(s[i]) s.midrange <- (max(s[i]) + min(s[i])) / 2 s.mode <- mlv(s[i], method='mfv')$M s.kernelmode <- mlv(s[i], method='kernel', bw=bw)$M c(s.mean, s.median, s.midrange, s.mode, s.kernelmode) } (r <- boot(x,boot.stat, R=par1, stype='i')) postscript(file="/var/wessaorg/rcomp/tmp/1jo9t1387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) plot(r$t[,1],type='p',ylab='simulated values',main='Simulation of Mean') grid() dev.off() postscript(file="/var/wessaorg/rcomp/tmp/2a3141387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) plot(r$t[,2],type='p',ylab='simulated values',main='Simulation of Median') grid() dev.off() postscript(file="/var/wessaorg/rcomp/tmp/30atp1387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) plot(r$t[,3],type='p',ylab='simulated values',main='Simulation of Midrange') grid() dev.off() postscript(file="/var/wessaorg/rcomp/tmp/4ipgw1387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) plot(r$t[,4],type='p',ylab='simulated values',main='Simulation of Mode') grid() dev.off() postscript(file="/var/wessaorg/rcomp/tmp/564cs1387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) plot(r$t[,5],type='p',ylab='simulated values',main='Simulation of Mode of Kernel Density') grid() dev.off() postscript(file="/var/wessaorg/rcomp/tmp/64qth1387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) densityplot(~r$t[,1],col='black',main='Density Plot',xlab='mean') dev.off() postscript(file="/var/wessaorg/rcomp/tmp/7i2k91387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) densityplot(~r$t[,2],col='black',main='Density Plot',xlab='median') dev.off() postscript(file="/var/wessaorg/rcomp/tmp/8jcwv1387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) densityplot(~r$t[,3],col='black',main='Density Plot',xlab='midrange') dev.off() postscript(file="/var/wessaorg/rcomp/tmp/9svl21387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) densityplot(~r$t[,4],col='black',main='Density Plot',xlab='mode') dev.off() postscript(file="/var/wessaorg/rcomp/tmp/10dgk71387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) densityplot(~r$t[,5],col='black',main='Density Plot',xlab='mode of kernel dens.') dev.off() z <- data.frame(cbind(r$t[,1],r$t[,2],r$t[,3],r$t[,4],r$t[,5])) colnames(z) <- list('mean','median','midrange','mode','mode k.dens') postscript(file="/var/wessaorg/rcomp/tmp/11lf4q1387730685.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) boxplot(z,notch=TRUE,ylab='simulated values',main='Bootstrap Simulation - Central Tendency') grid() dev.off() #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,'Estimation Results of Bootstrap',10,TRUE) a<-table.row.end(a) if (par4 == 'P1 P5 Q1 Q3 P95 P99') { myq.1 <- 0.01 myq.2 <- 0.05 myq.3 <- 0.95 myq.4 <- 0.99 myl.1 <- 'P1' myl.2 <- 'P5' myl.3 <- 'P95' myl.4 <- 'P99' } if (par4 == 'P0.5 P2.5 Q1 Q3 P97.5 P99.5') { myq.1 <- 0.005 myq.2 <- 0.025 myq.3 <- 0.975 myq.4 <- 0.995 myl.1 <- 'P0.5' myl.2 <- 'P2.5' myl.3 <- 'P97.5' myl.4 <- 'P99.5' } if (par4 == 'P10 P20 Q1 Q3 P80 P90') { myq.1 <- 0.10 myq.2 <- 0.20 myq.3 <- 0.80 myq.4 <- 0.90 myl.1 <- 'P10' myl.2 <- 'P20' myl.3 <- 'P80' myl.4 <- 'P90' } a<-table.row.start(a) a<-table.element(a,'statistic',header=TRUE) a<-table.element(a,myl.1,header=TRUE) a<-table.element(a,myl.2,header=TRUE) a<-table.element(a,'Q1',header=TRUE) a<-table.element(a,'Estimate',header=TRUE) a<-table.element(a,'Q3',header=TRUE) a<-table.element(a,myl.3,header=TRUE) a<-table.element(a,myl.4,header=TRUE) a<-table.element(a,'S.D.',header=TRUE) a<-table.element(a,'IQR',header=TRUE) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'mean',header=TRUE) q1 <- quantile(r$t[,1],0.25)[[1]] q3 <- quantile(r$t[,1],0.75)[[1]] p01 <- quantile(r$t[,1],myq.1)[[1]] p05 <- quantile(r$t[,1],myq.2)[[1]] p95 <- quantile(r$t[,1],myq.3)[[1]] p99 <- quantile(r$t[,1],myq.4)[[1]] a<-table.element(a,signif(p01,par2)) a<-table.element(a,signif(p05,par2)) a<-table.element(a,signif(q1,par2)) a<-table.element(a,signif(r$t0[1],par2)) a<-table.element(a,signif(q3,par2)) a<-table.element(a,signif(p95,par2)) a<-table.element(a,signif(p99,par2)) a<-table.element( a,signif( sqrt(var(r$t[,1])),par2 ) ) a<-table.element(a,signif(q3-q1,par2)) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'median',header=TRUE) q1 <- quantile(r$t[,2],0.25)[[1]] q3 <- quantile(r$t[,2],0.75)[[1]] p01 <- quantile(r$t[,2],myq.1)[[1]] p05 <- quantile(r$t[,2],myq.2)[[1]] p95 <- quantile(r$t[,2],myq.3)[[1]] p99 <- quantile(r$t[,2],myq.4)[[1]] a<-table.element(a,signif(p01,par2)) a<-table.element(a,signif(p05,par2)) a<-table.element(a,signif(q1,par2)) a<-table.element(a,signif(r$t0[2],par2)) a<-table.element(a,signif(q3,par2)) a<-table.element(a,signif(p95,par2)) a<-table.element(a,signif(p99,par2)) a<-table.element(a,signif(sqrt(var(r$t[,2])),par2)) a<-table.element(a,signif(q3-q1,par2)) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'midrange',header=TRUE) q1 <- quantile(r$t[,3],0.25)[[1]] q3 <- quantile(r$t[,3],0.75)[[1]] p01 <- quantile(r$t[,3],myq.1)[[1]] p05 <- quantile(r$t[,3],myq.2)[[1]] p95 <- quantile(r$t[,3],myq.3)[[1]] p99 <- quantile(r$t[,3],myq.4)[[1]] a<-table.element(a,signif(p01,par2)) a<-table.element(a,signif(p05,par2)) a<-table.element(a,signif(q1,par2)) a<-table.element(a,signif(r$t0[3],par2)) a<-table.element(a,signif(q3,par2)) a<-table.element(a,signif(p95,par2)) a<-table.element(a,signif(p99,par2)) a<-table.element(a,signif(sqrt(var(r$t[,3])),par2)) a<-table.element(a,signif(q3-q1,par2)) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'mode',header=TRUE) q1 <- quantile(r$t[,4],0.25)[[1]] q3 <- quantile(r$t[,4],0.75)[[1]] p01 <- quantile(r$t[,4],myq.1)[[1]] p05 <- quantile(r$t[,4],myq.2)[[1]] p95 <- quantile(r$t[,4],myq.3)[[1]] p99 <- quantile(r$t[,4],myq.4)[[1]] a<-table.element(a,signif(p01,par2)) a<-table.element(a,signif(p05,par2)) a<-table.element(a,signif(q1,par2)) a<-table.element(a,signif(r$t0[4],par2)) a<-table.element(a,signif(q3,par2)) a<-table.element(a,signif(p95,par2)) a<-table.element(a,signif(p99,par2)) a<-table.element(a,signif(sqrt(var(r$t[,4])),par2)) a<-table.element(a,signif(q3-q1,par2)) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'mode k.dens',header=TRUE) q1 <- quantile(r$t[,5],0.25)[[1]] q3 <- quantile(r$t[,5],0.75)[[1]] p01 <- quantile(r$t[,5],myq.1)[[1]] p05 <- quantile(r$t[,5],myq.2)[[1]] p95 <- quantile(r$t[,5],myq.3)[[1]] p99 <- quantile(r$t[,5],myq.4)[[1]] a<-table.element(a,signif(p01,par2)) a<-table.element(a,signif(p05,par2)) a<-table.element(a,signif(q1,par2)) a<-table.element(a,signif(r$t0[5],par2)) a<-table.element(a,signif(q3,par2)) a<-table.element(a,signif(p95,par2)) a<-table.element(a,signif(p99,par2)) a<-table.element(a,signif(sqrt(var(r$t[,5])),par2)) a<-table.element(a,signif(q3-q1,par2)) a<-table.row.end(a) a<-table.end(a) table.save(a,file="/var/wessaorg/rcomp/tmp/12leeu1387730686.tab") try(system("convert tmp/1jo9t1387730685.ps tmp/1jo9t1387730685.png",intern=TRUE)) try(system("convert tmp/2a3141387730685.ps tmp/2a3141387730685.png",intern=TRUE)) try(system("convert tmp/30atp1387730685.ps tmp/30atp1387730685.png",intern=TRUE)) try(system("convert tmp/4ipgw1387730685.ps tmp/4ipgw1387730685.png",intern=TRUE)) try(system("convert tmp/564cs1387730685.ps tmp/564cs1387730685.png",intern=TRUE)) try(system("convert tmp/64qth1387730685.ps tmp/64qth1387730685.png",intern=TRUE)) try(system("convert tmp/7i2k91387730685.ps tmp/7i2k91387730685.png",intern=TRUE)) try(system("convert tmp/8jcwv1387730685.ps tmp/8jcwv1387730685.png",intern=TRUE)) try(system("convert tmp/9svl21387730685.ps tmp/9svl21387730685.png",intern=TRUE)) try(system("convert tmp/10dgk71387730685.ps tmp/10dgk71387730685.png",intern=TRUE)) try(system("convert tmp/11lf4q1387730685.ps tmp/11lf4q1387730685.png",intern=TRUE))