R version 2.9.0 (2009-04-17) Copyright (C) 2009 The R Foundation for Statistical Computing ISBN 3-900051-07-0 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(1772.2 + ,1769.5 + ,1768 + ,1794.8 + ,1823.4 + ,1856.9 + ,1866.9 + ,1869.8 + ,1843.8 + ,1837.1 + ,1857.7 + ,1840.3 + ,1914.6 + ,1972.9 + ,2050.1 + ,2086.2 + ,2112.5 + ,2147.6 + ,2190.4 + ,2194.1 + ,2216.2 + ,2218.6 + ,2233.5 + ,2307.2 + ,2350.4 + ,2368.2 + ,2353.8 + ,2316.5 + ,2305.5 + ,2308.4 + ,2334.4 + ,2381.2 + ,2449.7 + ,2490.3 + ,2523.5 + ,2537.6 + ,2526.1 + ,2545.9 + ,2542.7 + ,2584.3 + ,2600.2 + ,2593.9 + ,2618.9 + ,2591.3 + ,2521.2 + ,2536.6 + ,2596.1 + ,2656.6 + ,2710.3 + ,2778.8 + ,2775.5 + ,2785.2 + ,2847.7 + ,2834.4 + ,2839 + ,2802.6 + ,2819.3 + ,2872 + ,2918.4 + ,2977.8 + ,3031.2 + ,3064.7 + ,3093 + ,3100.6 + ,3141.1 + ,3180.4 + ,3240.3 + ,3265 + ,3338.2 + ,3376.6 + ,3422.5 + ,3432 + ,3516.3 + ,3564 + ,3636.3 + ,3724 + ,3815.4 + ,3828.1 + ,3853.3 + ,3884.5 + ,3918.7 + ,3919.6 + ,3950.8 + ,3981 + ,4063 + ,4132 + ,4160.3 + ,4178.3 + ,4244.1 + ,4256.5 + ,4283.4 + ,4263.3 + ,4256.6 + ,4264.3 + ,4302.3 + ,4256.6 + ,4374 + ,4398.8 + ,4433.9 + ,4446.3 + ,4525.8 + ,4633.1 + ,4677.5 + ,4754.5 + ,4876.2 + ,4932.6 + ,4906.3 + ,4953.1 + ,4909.6 + ,4922.2 + ,4873.5 + ,4854.3 + ,4795.3 + ,4831.9 + ,4913.3 + ,4977.5 + ,5090.7 + ,5128.9 + ,5154.1 + ,5191.5 + ,5251.8 + ,5356.1 + ,5451.9 + ,5450.8 + ,5469.4 + ,5684.6 + ,5740.3 + ,5816.2 + ,5825.9 + ,5831.4 + ,5873.3 + ,5889.5 + ,5908.5 + ,5787.4 + ,5776.6 + ,5883.5 + ,6005.7 + ,5957.8 + ,6030.2 + ,5955.1 + ,5857.3 + ,5889.1 + ,5866.4 + ,5871 + ,5944 + ,6077.6 + ,6197.5 + ,6325.6 + ,6448.3 + ,6559.6 + ,6623.3 + ,6677.3 + ,6740.3 + ,6797.3 + ,6903.5 + ,6955.9 + ,7022.8 + ,7051 + ,7119 + ,7153.4 + ,7193 + ,7269.5 + ,7332.6 + ,7458 + ,7496.6 + ,7592.9 + ,7632.1 + ,7734 + ,7806.6 + ,7865 + ,7927.4 + ,7944.7 + ,8027.7 + ,8059.6 + ,8059.5 + ,7988.9 + ,7950.2 + ,8003.8 + ,8037.5 + ,8069 + ,8157.6 + ,8244.3 + ,8329.4 + ,8417 + ,8432.5 + ,8486.4 + ,8531.1 + ,8643.8 + ,8727.9 + ,8847.3 + ,8904.3 + ,9003.2 + ,9025.3 + ,9044.7 + ,9120.7 + ,9184.3 + ,9247.2 + ,9407.1 + ,9488.9 + ,9592.5 + ,9666.2 + ,9809.6 + ,9932.7 + ,10008.9 + ,10103.4 + ,10194.3 + ,10328.8 + ,10507.6 + ,10601.2 + ,10684 + ,10819.9 + ,11014.3 + ,11043 + ,11258.5 + ,11267.9 + ,11334.5 + ,11297.2 + ,11371.3 + ,11340.1 + ,11380.1 + ,11477.9 + ,11538.8 + ,11596.4 + ,11598.8 + ,11645.8 + ,11738.7 + ,11935.5 + ,12042.8 + ,12127.6 + ,12213.8 + ,12303.5 + ,12410.3 + ,12534.1 + ,12587.5 + ,12683.2 + ,12748.7 + ,12915.9 + ,12962.5 + ,12965.9 + ,13060.7 + ,13099.9 + ,13204 + ,13321.1 + ,13391.2 + ,13366.9 + ,13415.3 + ,13324.6 + ,13141.9 + ,12925.4 + ,12901.5 + ,12973 + ,13155) > ylimmax = '' > ylimmin = '' > main = 'Robustness of Central Tendency' > #'GNU S' R Code compiled by R2WASP v. 1.0.44 () > #Author: Prof. Dr. P. Wessa > #To cite this work: AUTHOR(S), (YEAR), YOUR SOFTWARE TITLE (vNUMBER) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_YOURPAGE.wasp/ > #Source of accompanying publication: Office for Research, Development, and Education > #Technical description: Write here your technical program description (don't use hard returns!) > geomean <- function(x) { + return(exp(mean(log(x)))) + } > harmean <- function(x) { + return(1/mean(1/x)) + } > quamean <- function(x) { + return(sqrt(mean(x*x))) + } > winmean <- function(x) { + x <-sort(x[!is.na(x)]) + n<-length(x) + denom <- 3 + nodenom <- n/denom + if (nodenom>40) denom <- n/40 + sqrtn = sqrt(n) + roundnodenom = floor(nodenom) + win <- array(NA,dim=c(roundnodenom,2)) + for (j in 1:roundnodenom) { + win[j,1] <- (j*x[j+1]+sum(x[(j+1):(n-j)])+j*x[n-j])/n + win[j,2] <- sd(c(rep(x[j+1],j),x[(j+1):(n-j)],rep(x[n-j],j)))/sqrtn + } + return(win) + } > trimean <- function(x) { + x <-sort(x[!is.na(x)]) + n<-length(x) + denom <- 3 + nodenom <- n/denom + if (nodenom>40) denom <- n/40 + sqrtn = sqrt(n) + roundnodenom = floor(nodenom) + tri <- array(NA,dim=c(roundnodenom,2)) + for (j in 1:roundnodenom) { + tri[j,1] <- mean(x,trim=j/n) + tri[j,2] <- sd(x[(j+1):(n-j)]) / sqrt(n-j*2) + } + return(tri) + } > midrange <- function(x) { + return((max(x)+min(x))/2) + } > q1 <- function(data,n,p,i,f) { + np <- n*p; + i <<- floor(np) + f <<- np - i + qvalue <- (1-f)*data[i] + f*data[i+1] + } > q2 <- function(data,n,p,i,f) { + np <- (n+1)*p + i <<- floor(np) + f <<- np - i + qvalue <- (1-f)*data[i] + f*data[i+1] + } > q3 <- function(data,n,p,i,f) { + np <- n*p + i <<- floor(np) + f <<- np - i + if (f==0) { + qvalue <- data[i] + } else { + qvalue <- data[i+1] + } + } > q4 <- function(data,n,p,i,f) { + np <- n*p + i <<- floor(np) + f <<- np - i + if (f==0) { + qvalue <- (data[i]+data[i+1])/2 + } else { + qvalue <- data[i+1] + } + } > q5 <- function(data,n,p,i,f) { + np <- (n-1)*p + i <<- floor(np) + f <<- np - i + if (f==0) { + qvalue <- data[i+1] + } else { + qvalue <- data[i+1] + f*(data[i+2]-data[i+1]) + } + } > q6 <- function(data,n,p,i,f) { + np <- n*p+0.5 + i <<- floor(np) + f <<- np - i + qvalue <- data[i] + } > q7 <- function(data,n,p,i,f) { + np <- (n+1)*p + i <<- floor(np) + f <<- np - i + if (f==0) { + qvalue <- data[i] + } else { + qvalue <- f*data[i] + (1-f)*data[i+1] + } + } > q8 <- function(data,n,p,i,f) { + np <- (n+1)*p + i <<- floor(np) + f <<- np - i + if (f==0) { + qvalue <- data[i] + } else { + if (f == 0.5) { + qvalue <- (data[i]+data[i+1])/2 + } else { + if (f < 0.5) { + qvalue <- data[i] + } else { + qvalue <- data[i+1] + } + } + } + } > midmean <- function(x,def) { + x <-sort(x[!is.na(x)]) + n<-length(x) + if (def==1) { + qvalue1 <- q1(x,n,0.25,i,f) + qvalue3 <- q1(x,n,0.75,i,f) + } + if (def==2) { + qvalue1 <- q2(x,n,0.25,i,f) + qvalue3 <- q2(x,n,0.75,i,f) + } + if (def==3) { + qvalue1 <- q3(x,n,0.25,i,f) + qvalue3 <- q3(x,n,0.75,i,f) + } + if (def==4) { + qvalue1 <- q4(x,n,0.25,i,f) + qvalue3 <- q4(x,n,0.75,i,f) + } + if (def==5) { + qvalue1 <- q5(x,n,0.25,i,f) + qvalue3 <- q5(x,n,0.75,i,f) + } + if (def==6) { + qvalue1 <- q6(x,n,0.25,i,f) + qvalue3 <- q6(x,n,0.75,i,f) + } + if (def==7) { + qvalue1 <- q7(x,n,0.25,i,f) + qvalue3 <- q7(x,n,0.75,i,f) + } + if (def==8) { + qvalue1 <- q8(x,n,0.25,i,f) + qvalue3 <- q8(x,n,0.75,i,f) + } + midm <- 0 + myn <- 0 + roundno4 <- round(n/4) + round3no4 <- round(3*n/4) + for (i in 1:n) { + if ((x[i]>=qvalue1) & (x[i]<=qvalue3)){ + midm = midm + x[i] + myn = myn + 1 + } + } + midm = midm / myn + return(midm) + } > (arm <- mean(x)) [1] 6294.499 > sqrtn <- sqrt(length(x)) > (armse <- sd(x) / sqrtn) [1] 221.5596 > (armose <- arm / armse) [1] 28.40996 > (geo <- geomean(x)) [1] 5314.977 > (har <- harmean(x)) [1] 4444.259 > (qua <- quamean(x)) [1] 7207.078 > (win <- winmean(x)) [,1] [,2] [1,] 6294.410 221.5469 [2,] 6294.238 221.5206 [3,] 6294.004 221.4349 [4,] 6294.402 221.3912 [5,] 6292.350 221.0778 [6,] 6291.260 220.9268 [7,] 6290.993 220.8740 [8,] 6290.076 220.6763 [9,] 6288.704 220.5023 [10,] 6285.589 220.0495 [11,] 6285.406 220.0019 [12,] 6287.377 219.8125 [13,] 6288.471 219.3443 [14,] 6292.232 218.9470 [15,] 6293.524 218.6785 [16,] 6285.492 217.3920 [17,] 6283.441 216.6898 [18,] 6279.663 215.6576 [19,] 6275.915 215.1687 [20,] 6267.844 213.9049 [21,] 6259.144 212.8773 [22,] 6252.614 211.8972 [23,] 6251.318 210.5251 [24,] 6243.404 209.6189 [25,] 6232.878 208.4432 [26,] 6213.409 206.1898 [27,] 6205.373 204.9878 [28,] 6201.929 204.3033 [29,] 6202.044 204.2449 [30,] 6196.901 203.3967 [31,] 6191.008 202.4952 [32,] 6187.288 200.5598 [33,] 6191.452 200.0476 [34,] 6191.412 199.3073 [35,] 6190.953 199.2038 [36,] 6185.996 198.6294 [37,] 6183.236 198.0757 [38,] 6181.969 197.9198 [39,] 6149.407 194.4856 [40,] 6145.360 193.9920 [41,] 6119.979 190.3931 [42,] 6098.495 188.0927 [43,] 6084.810 186.6927 [44,] 6068.852 185.0957 [45,] 6037.655 182.0159 [46,] 6016.517 179.4671 [47,] 6006.595 177.3711 [48,] 5998.823 174.9532 [49,] 5996.685 172.6579 [50,] 5972.915 170.4044 [51,] 5945.188 167.7231 [52,] 5933.571 166.1141 [53,] 5915.294 163.9479 [54,] 5901.002 162.1884 [55,] 5867.107 159.1328 [56,] 5855.062 157.8072 [57,] 5846.173 156.1847 [58,] 5839.360 153.9196 [59,] 5848.725 152.4954 [60,] 5856.178 151.1084 [61,] 5840.347 148.5275 [62,] 5833.286 146.8599 [63,] 5805.336 144.2935 [64,] 5794.263 141.8093 [65,] 5775.330 138.7399 [66,] 5779.311 136.6494 [67,] 5771.548 135.0355 [68,] 5787.117 133.2533 [69,] 5773.646 130.6059 [70,] 5762.757 127.8392 [71,] 5741.006 125.7640 [72,] 5739.778 122.0779 [73,] 5750.873 120.8715 [74,] 5772.074 119.3471 [75,] 5791.628 116.9973 [76,] 5816.237 114.8438 [77,] 5812.815 114.0148 [78,] 5816.003 113.1218 [79,] 5813.652 111.5194 [80,] 5822.763 110.6397 [81,] 5817.492 110.1953 [82,] 5807.339 107.9538 [83,] 5798.051 105.8151 [84,] 5801.185 102.1257 > (tri <- trimean(x)) [,1] [,2] [1,] 6284.122 220.7593 [2,] 6273.669 219.9267 [3,] 6263.133 219.0606 [4,] 6252.505 218.1763 [5,] 6241.598 217.2534 [6,] 6230.940 216.3489 [7,] 6220.296 215.4212 [8,] 6209.511 214.4485 [9,] 6198.666 213.4492 [10,] 6187.800 212.4157 [11,] 6177.085 211.3792 [12,] 6166.201 210.2874 [13,] 6154.942 209.1513 [14,] 6143.386 207.9959 [15,] 6131.318 206.8092 [16,] 6118.931 205.5756 [17,] 6106.897 204.3845 [18,] 6094.781 203.1809 [19,] 6082.686 201.9891 [20,] 6070.598 200.7628 [21,] 6058.763 199.5596 [22,] 6047.202 198.3597 [23,] 6035.781 197.1564 [24,] 6024.204 195.9736 [25,] 6012.810 194.7787 [26,] 6001.719 193.5884 [27,] 5991.357 192.4755 [28,] 5981.165 191.3680 [29,] 5970.924 190.2294 [30,] 5960.464 189.0152 [31,] 5950.011 187.7721 [32,] 5939.590 186.5007 [33,] 5929.103 185.2616 [34,] 5918.215 183.9637 [35,] 5907.089 182.6178 [36,] 5895.734 181.1802 [37,] 5884.320 179.6748 [38,] 5872.752 178.0937 [39,] 5860.967 176.4055 [40,] 5850.131 174.8167 [41,] 5839.191 173.1397 [42,] 5828.918 171.5665 [43,] 5819.174 170.0204 [44,] 5809.682 168.4438 [45,] 5800.519 166.8465 [46,] 5792.219 165.3216 [47,] 5784.442 163.8360 [48,] 5776.807 162.3599 [49,] 5769.238 160.9115 [50,] 5761.543 159.4821 [51,] 5754.441 158.0760 [52,] 5748.072 156.7208 [53,] 5741.915 155.3483 [54,] 5736.190 153.9923 [55,] 5730.774 152.6267 [56,] 5726.312 151.3354 [57,] 5722.114 150.0086 [58,] 5718.081 148.6611 [59,] 5714.149 147.3309 [60,] 5709.794 145.9607 [61,] 5705.065 144.5437 [62,] 5700.698 143.1603 [63,] 5696.421 141.7489 [64,] 5692.908 140.3723 [65,] 5689.637 139.0229 [66,] 5686.868 137.7438 [67,] 5683.877 136.4677 [68,] 5681.034 135.1628 [69,] 5677.586 133.8329 [70,] 5674.454 132.5442 [71,] 5671.564 131.3078 [72,] 5669.281 130.0784 [73,] 5666.954 128.9732 [74,] 5664.168 127.8117 [75,] 5660.566 126.6086 [76,] 5656.162 125.4230 [77,] 5650.746 124.2358 [78,] 5645.221 122.9476 [79,] 5639.351 121.5472 [80,] 5633.308 120.0857 [81,] 5626.677 118.4811 [82,] 5619.931 116.6804 [83,] 5613.234 114.8370 [84,] 5606.554 112.9344 > (midr <- midrange(x)) [1] 7591.65 > midm <- array(NA,dim=8) > for (j in 1:8) midm[j] <- midmean(x,j) > midm [1] 5675.922 5696.421 5675.922 5696.421 5696.421 5675.922 5696.421 5700.698 > postscript(file="/var/www/html/rcomp/tmp/1c52c1268594319.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > lb <- win[,1] - 2*win[,2] > ub <- win[,1] + 2*win[,2] > if ((ylimmin == '') | (ylimmax == '')) plot(win[,1],type='b',main=main, xlab='j', pch=19, ylab='Winsorized Mean(j/n)', ylim=c(min(lb),max(ub))) else plot(win[,1],type='l',main=main, xlab='j', pch=19, ylab='Winsorized Mean(j/n)', ylim=c(ylimmin,ylimmax)) > lines(ub,lty=3) > lines(lb,lty=3) > grid() > dev.off() null device 1 > postscript(file="/var/www/html/rcomp/tmp/2257t1268594319.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > lb <- tri[,1] - 2*tri[,2] > ub <- tri[,1] + 2*tri[,2] > if ((ylimmin == '') | (ylimmax == '')) plot(tri[,1],type='b',main=main, xlab='j', pch=19, ylab='Trimmed Mean(j/n)', ylim=c(min(lb),max(ub))) else plot(tri[,1],type='l',main=main, xlab='j', pch=19, ylab='Trimmed Mean(j/n)', ylim=c(ylimmin,ylimmax)) > lines(ub,lty=3) > lines(lb,lty=3) > grid() > dev.off() null device 1 > > #Note: the /var/www/html/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab > load(file="/var/www/html/rcomp/createtable") > > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Central Tendency - Ungrouped Data',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Measure',header=TRUE) > a<-table.element(a,'Value',header=TRUE) > a<-table.element(a,'S.E.',header=TRUE) > a<-table.element(a,'Value/S.E.',header=TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,hyperlink('http://www.xycoon.com/arithmetic_mean.htm', 'Arithmetic Mean', 'click to view the definition of the Arithmetic Mean'),header=TRUE) > a<-table.element(a,arm) > a<-table.element(a,hyperlink('http://www.xycoon.com/arithmetic_mean_standard_error.htm', armse, 'click to view the definition of the Standard Error of the Arithmetic Mean')) > a<-table.element(a,armose) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,hyperlink('http://www.xycoon.com/geometric_mean.htm', 'Geometric Mean', 'click to view the definition of the Geometric Mean'),header=TRUE) > a<-table.element(a,geo) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,hyperlink('http://www.xycoon.com/harmonic_mean.htm', 'Harmonic Mean', 'click to view the definition of the Harmonic Mean'),header=TRUE) > a<-table.element(a,har) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,hyperlink('http://www.xycoon.com/quadratic_mean.htm', 'Quadratic Mean', 'click to view the definition of the Quadratic Mean'),header=TRUE) > a<-table.element(a,qua) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > for (j in 1:length(win[,1])) { + a<-table.row.start(a) + mylabel <- paste('Winsorized Mean (',j) + mylabel <- paste(mylabel,'/') + mylabel <- paste(mylabel,length(win[,1])) + mylabel <- paste(mylabel,')') + a<-table.element(a,hyperlink('http://www.xycoon.com/winsorized_mean.htm', mylabel, 'click to view the definition of the Winsorized Mean'),header=TRUE) + a<-table.element(a,win[j,1]) + a<-table.element(a,win[j,2]) + a<-table.element(a,win[j,1]/win[j,2]) + a<-table.row.end(a) + } > for (j in 1:length(tri[,1])) { + a<-table.row.start(a) + mylabel <- paste('Trimmed Mean (',j) + mylabel <- paste(mylabel,'/') + mylabel <- paste(mylabel,length(tri[,1])) + mylabel <- paste(mylabel,')') + a<-table.element(a,hyperlink('http://www.xycoon.com/arithmetic_mean.htm', mylabel, 'click to view the definition of the Trimmed Mean'),header=TRUE) + a<-table.element(a,tri[j,1]) + a<-table.element(a,tri[j,2]) + a<-table.element(a,tri[j,1]/tri[j,2]) + a<-table.row.end(a) + } > a<-table.row.start(a) > a<-table.element(a,hyperlink('http://www.xycoon.com/median_1.htm', 'Median', 'click to view the definition of the Median'),header=TRUE) > a<-table.element(a,median(x)) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,hyperlink('http://www.xycoon.com/midrange.htm', 'Midrange', 'click to view the definition of the Midrange'),header=TRUE) > a<-table.element(a,midr) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > mymid <- hyperlink('http://www.xycoon.com/midmean.htm', 'Midmean', 'click to view the definition of the Midmean') > mylabel <- paste(mymid,hyperlink('http://www.xycoon.com/method_1.htm','Weighted Average at Xnp',''),sep=' - ') > a<-table.element(a,mylabel,header=TRUE) > a<-table.element(a,midm[1]) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > mymid <- hyperlink('http://www.xycoon.com/midmean.htm', 'Midmean', 'click to view the definition of the Midmean') > mylabel <- paste(mymid,hyperlink('http://www.xycoon.com/method_2.htm','Weighted Average at X(n+1)p',''),sep=' - ') > a<-table.element(a,mylabel,header=TRUE) > a<-table.element(a,midm[2]) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > mymid <- hyperlink('http://www.xycoon.com/midmean.htm', 'Midmean', 'click to view the definition of the Midmean') > mylabel <- paste(mymid,hyperlink('http://www.xycoon.com/method_3.htm','Empirical Distribution Function',''),sep=' - ') > a<-table.element(a,mylabel,header=TRUE) > a<-table.element(a,midm[3]) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > mymid <- hyperlink('http://www.xycoon.com/midmean.htm', 'Midmean', 'click to view the definition of the Midmean') > mylabel <- paste(mymid,hyperlink('http://www.xycoon.com/method_4.htm','Empirical Distribution Function - Averaging',''),sep=' - ') > a<-table.element(a,mylabel,header=TRUE) > a<-table.element(a,midm[4]) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > mymid <- hyperlink('http://www.xycoon.com/midmean.htm', 'Midmean', 'click to view the definition of the Midmean') > mylabel <- paste(mymid,hyperlink('http://www.xycoon.com/method_5.htm','Empirical Distribution Function - Interpolation',''),sep=' - ') > a<-table.element(a,mylabel,header=TRUE) > a<-table.element(a,midm[5]) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > mymid <- hyperlink('http://www.xycoon.com/midmean.htm', 'Midmean', 'click to view the definition of the Midmean') > mylabel <- paste(mymid,hyperlink('http://www.xycoon.com/method_6.htm','Closest Observation',''),sep=' - ') > a<-table.element(a,mylabel,header=TRUE) > a<-table.element(a,midm[6]) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > mymid <- hyperlink('http://www.xycoon.com/midmean.htm', 'Midmean', 'click to view the definition of the Midmean') > mylabel <- paste(mymid,hyperlink('http://www.xycoon.com/method_7.htm','True Basic - Statistics Graphics Toolkit',''),sep=' - ') > a<-table.element(a,mylabel,header=TRUE) > a<-table.element(a,midm[7]) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > mymid <- hyperlink('http://www.xycoon.com/midmean.htm', 'Midmean', 'click to view the definition of the Midmean') > mylabel <- paste(mymid,hyperlink('http://www.xycoon.com/method_8.htm','MS Excel (old versions)',''),sep=' - ') > a<-table.element(a,mylabel,header=TRUE) > a<-table.element(a,midm[8]) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Number of observations',header=TRUE) > a<-table.element(a,length(x)) > a<-table.element(a,'') > a<-table.element(a,'') > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/www/html/rcomp/tmp/3kt521268594319.tab") > > try(system("convert tmp/1c52c1268594319.ps tmp/1c52c1268594319.png",intern=TRUE)) character(0) > try(system("convert tmp/2257t1268594319.ps tmp/2257t1268594319.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 1.280 0.357 1.428