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(1149822 + ,1086979 + ,1276674 + ,1522522 + ,1742117 + ,1737275 + ,1979900 + ,2061036 + ,1867943 + ,1707752 + ,1298756 + ,1281814 + ,1281151 + ,1164976 + ,1454329 + ,1645288 + ,1817743 + ,1895785 + ,2236311 + ,2295951 + ,2087315 + ,1980891 + ,1465446 + ,1445026 + ,1488120 + ,1338333 + ,1715789 + ,1806090 + ,2083316 + ,2092278 + ,2430800 + ,2424894 + ,2299016 + ,2130688 + ,1652221 + ,1608162 + ,1647074 + ,1479691 + ,1884978 + ,2007898 + ,2208954 + ,2217164 + ,2534291 + ,2560312 + ,2429069 + ,2315077 + ,1799608 + ,1772590 + ,1744799 + ,1659093 + ,2099821 + ,2135736 + ,2427894 + ,2468882 + ,2703217 + ,2766841 + ,2655236 + ,2550373 + ,2052097 + ,1998055 + ,1920748 + ,1876694 + ,2380930 + ,2467402 + ,2770771 + ,2781340 + ,3143926 + ,3172235 + ,2952540 + ,2920877 + ,2384552 + ,2248987 + ,2208616 + ,2178756 + ,2632870 + ,2706905 + ,3029745 + ,3015402 + ,3391414 + ,3507805 + ,3177852 + ,3142961 + ,2545815 + ,2414007 + ,2372578 + ,2332664 + ,2825328 + ,2901478 + ,3263955 + ,3226738 + ,3610786 + ,3709274 + ,3467185 + ,3449646 + ,2802951 + ,2462530 + ,2490645 + ,2561520 + ,3067554 + ,3226951 + ,3546493 + ,3492787 + ,3952263 + ,3932072 + ,3720284 + ,3651555 + ,2914972 + ,2713514 + ,2703997 + ,2591373 + ,3163748 + ,3355137 + ,3613702 + ,3686773 + ,4098716 + ,4063517 + ,3551489 + ,3226663 + ,2656842 + ,2597484 + ,2572399 + ,2596631 + ,3165225 + ,3303145 + ,3698247 + ,3668631 + ,4130433 + ,4131400 + ,3864358 + ,3721110 + ,2892532 + ,2843451 + ,2747502 + ,2668775 + ,3018602 + ,3013392 + ,3393657 + ,3544233 + ,4075832 + ,4032923 + ,3734509 + ,3761285 + ,2970090 + ,2847849 + ,2741680 + ,2830639 + ,3257673 + ,3480085 + ,3843271 + ,3796961 + ,4337767 + ,4243630 + ,3927202 + ,3915296 + ,3087396 + ,2963792 + ,2955792 + ,2829925 + ,3281195 + ,3548011 + ,4059648 + ,3941175 + ,4528594 + ,4433151 + ,4145737 + ,4077132 + ,3198519 + ,3078660 + ,3028202 + ,2858642 + ,3398954 + ,3808883 + ,4175961 + ,4227542 + ,4744616 + ,4608012 + ,4295049 + ,4201144 + ,3353276 + ,3286851 + ,3169889 + ,3051720 + ,3695426 + ,3905501 + ,4296458 + ,4246247 + ,4921849 + ,4821446 + ,4425064 + ,4379099 + ,3472889 + ,3359160 + ,3200944 + ,3153170 + ,3741498 + ,3918719 + ,4403449 + ,4400407 + ,4847473 + ,4716136 + ,4297440 + ,4272253 + ,3271834 + ,3168388 + ,2911748 + ,2720999 + ,3199918 + ,3672623 + ,3892013 + ,3850845 + ,4532467 + ,4484739 + ,4014972 + ,3983758 + ,3158459 + ,3100569 + ,2935404 + ,2855719 + ,3465611 + ,3006985 + ,4095110 + ,4104793 + ,4730788 + ,4642726 + ,4246919 + ,4308117) > 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] 3029149 > sqrtn <- sqrt(length(x)) > (armse <- sd(x) / sqrtn) [1] 60924.04 > (armose <- arm / armse) [1] 49.72009 > (geo <- geomean(x)) [1] 2875809 > (har <- harmean(x)) [1] 2706350 > (qua <- quamean(x)) [1] 3163998 > (win <- winmean(x)) [,1] [,2] [1,] 3029098 60840.68 [2,] 3029001 60791.95 [3,] 3029464 60464.27 [4,] 3029299 60423.32 [5,] 3028989 60381.03 [6,] 3027490 60085.89 [7,] 3027641 59803.19 [8,] 3028743 59032.43 [9,] 3028960 58970.91 [10,] 3027511 58695.91 [11,] 3025693 58340.92 [12,] 3025712 58242.36 [13,] 3026447 57879.88 [14,] 3031564 57260.45 [15,] 3032614 56841.09 [16,] 3029814 56522.84 [17,] 3027971 56253.27 [18,] 3027668 56108.09 [19,] 3031676 55661.79 [20,] 3032262 55574.16 [21,] 3032141 55152.09 [22,] 3030146 54858.12 [23,] 3030351 54822.91 [24,] 3033024 54490.00 [25,] 3034233 54009.29 [26,] 3031942 53637.31 [27,] 3030325 53206.39 [28,] 3032800 52226.57 [29,] 3032083 51941.76 [30,] 3033055 51821.19 [31,] 3031020 51346.42 [32,] 3033694 50921.10 [33,] 3041805 50045.11 [34,] 3039249 49779.22 [35,] 3041706 49510.44 [36,] 3041312 49182.13 [37,] 3047915 48455.08 [38,] 3044925 47903.36 [39,] 3045672 47270.79 [40,] 3040855 46707.05 [41,] 3036041 46116.65 [42,] 3035383 45807.76 [43,] 3039524 45126.10 [44,] 3039558 44954.93 [45,] 3046435 44048.74 [46,] 3051816 43459.20 [47,] 3049849 43273.69 [48,] 3048728 42872.14 [49,] 3046884 41993.62 [50,] 3046698 41495.45 [51,] 3055587 40452.75 [52,] 3048380 39714.63 [53,] 3049351 39162.18 [54,] 3045029 38094.59 [55,] 3049927 36892.71 [56,] 3050265 36579.99 [57,] 3047799 36225.62 [58,] 3055146 35597.91 [59,] 3055114 35132.58 [60,] 3052983 34827.40 [61,] 3052539 34739.44 [62,] 3050640 34506.67 [63,] 3055540 33482.25 [64,] 3055790 33281.19 [65,] 3051304 32847.27 [66,] 3046605 31455.28 [67,] 3058680 30381.01 [68,] 3044306 28692.25 [69,] 3044635 28501.51 [70,] 3047244 28227.93 [71,] 3046913 28143.06 [72,] 3038774 26972.70 [73,] 3040052 26129.07 [74,] 3037614 25678.27 [75,] 3035509 25474.09 > (tri <- trimean(x)) [,1] [,2] [1,] 3029369 60259.75 [2,] 3029646 59646.71 [3,] 3029977 59025.89 [4,] 3030155 58491.83 [5,] 3030379 57939.15 [6,] 3030672 57364.74 [7,] 3031238 56816.29 [8,] 3031791 56285.64 [9,] 3032205 55844.93 [10,] 3032600 55386.61 [11,] 3033164 54936.72 [12,] 3033924 54502.66 [13,] 3034697 54053.05 [14,] 3035421 53614.83 [15,] 3035739 53212.95 [16,] 3035982 52826.33 [17,] 3036436 52444.26 [18,] 3037028 52061.22 [19,] 3037653 51665.29 [20,] 3038035 51280.81 [21,] 3038390 50877.40 [22,] 3038759 50480.34 [23,] 3039251 50078.76 [24,] 3039742 49651.71 [25,] 3040102 49220.03 [26,] 3040407 48793.70 [27,] 3040834 48363.93 [28,] 3041352 47934.07 [29,] 3041763 47542.85 [30,] 3042217 47142.09 [31,] 3042217 46719.18 [32,] 3043161 46296.78 [33,] 3043579 45871.16 [34,] 3043655 45472.60 [35,] 3043843 45060.04 [36,] 3043933 44632.33 [37,] 3044041 44191.96 [38,] 3043883 43764.79 [39,] 3043841 43339.22 [40,] 3043769 42920.28 [41,] 3043883 42503.23 [42,] 3044188 42089.34 [43,] 3044526 41659.31 [44,] 3044717 41237.31 [45,] 3044911 40788.07 [46,] 3044854 40360.26 [47,] 3044595 39932.70 [48,] 3044401 39476.84 [49,] 3044242 39005.19 [50,] 3044145 38550.41 [51,] 3044052 38085.90 [52,] 3043633 37649.71 [53,] 3043461 37222.43 [54,] 3043248 36790.28 [55,] 3043184 36391.03 [56,] 3042941 36036.45 [57,] 3042677 35663.82 [58,] 3042492 35274.40 [59,] 3042036 34886.63 [60,] 3041563 34488.23 [61,] 3041563 34065.19 [62,] 3041149 33596.13 [63,] 3040375 33087.68 [64,] 3039820 32603.55 [65,] 3039232 32073.27 [66,] 3038786 31513.05 [67,] 3038495 31009.54 [68,] 3037738 30535.49 [69,] 3037490 30157.03 [70,] 3037218 29738.49 [71,] 3036832 29281.87 [72,] 3036441 28761.96 [73,] 3036350 28287.28 [74,] 3036203 27827.12 [75,] 3036146 27339.58 > (midr <- midrange(x)) [1] 3004414 > midm <- array(NA,dim=8) > for (j in 1:8) midm[j] <- midmean(x,j) > midm [1] 3036821 3042941 3042941 3042941 3042677 3042941 3042941 3042941 > postscript(file="/var/www/html/rcomp/tmp/1jrjh1291975159.ps",horizontal=F,onefile=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/2jrjh1291975159.ps",horizontal=F,onefile=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/3luay1291975159.tab") > > try(system("convert tmp/1jrjh1291975159.ps tmp/1jrjh1291975159.png",intern=TRUE)) character(0) > try(system("convert tmp/2jrjh1291975159.ps tmp/2jrjh1291975159.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 1.149 0.376 2.479