Send output to:
Browser Blue - Charts White
Browser Black/White
CSV
Data:
-0.2337 0.8461 1.141 0.2904 0.1654 0.7785 3.436 0.9214 0.08464 0.02054 1.358 -0.5937 0.6834 0.097 0.7983 1.924 0.9491 -2.063 1.205 1.165 -0.7922 0.3784 -0.6493 1.354 -0.9899 1.044 -0.5605 1.31 -0.1312 -1.477 -1.979 0.783 -0.5453 0.395 -0.05395 -0.2328 -0.3732 2.375 -1.131 -0.00416 -0.8666 -1.334 -0.9791 -0.3413 0.4148 -0.7757 -2.795 0.2028 0.6391 -0.3679 -3.684 -0.1934 -2.649 0.461 1.982 0.4704 -0.7705 -0.4467 1.374 0.2078 1.405 -0.8562 -1.289 1.467 -1.554 -1.741 1.019 0.2541 -2.248 -2.585 0.9886 0.04954 0.2295 -1.045 1.097 2.499 0.3784 -3.803 0.2048 1.297 1.233 3.869 0.6703 2.144 -0.07562 1.016 -0.6277 1.354 0.2295 0.07858 0.04414 0.3784 1.911 1.542 -0.9401 1.81 -0.6463 -3.153 0.421 0.7167 -0.6493 0.3507 0.7331 -2.561 -0.3166 -1.833 3.656 0.9214 0.5853 1.321 -0.4269 -1.564 -0.3837 -0.7706 0.4395 -0.7705 0.3556 -0.01455 0.6557 0.4178 0.2904 -0.3474 -1.212 0.4704 1.875 -0.99 -2.867 0.6804 0.4862 -1.773 1.206 0.02054 -2.317 -1.289 0.3754 -2.432 1.297 -1.767 2.811 -0.4767 0.3507 -1.498 -0.8003 0.6557 -0.5575 -3.02 -0.6216 0.5947 -2.439 1.64 2.418 0.5967 2.436 -2.038 -1.067 0.08499 -0.8566 0.4425 -2.77 2.278
Chart options
Title:
Y-axis minimum
Y-axis maximum
R Code
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)) sqrtn <- sqrt(length(x)) (armse <- sd(x) / sqrtn) (armose <- arm / armse) (geo <- geomean(x)) (har <- harmean(x)) (qua <- quamean(x)) (win <- winmean(x)) (tri <- trimean(x)) (midr <- midrange(x)) midm <- array(NA,dim=8) for (j in 1:8) midm[j] <- midmean(x,j) midm bitmap(file='test1.png') 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() bitmap(file='test2.png') 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() load(file='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,'Arithmetic Mean',header=TRUE) a<-table.element(a,signif(arm,6)) a<-table.element(a, signif(armse,6)) a<-table.element(a,signif(armose,6)) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a, 'Geometric Mean',header=TRUE) a<-table.element(a,signif(geo,6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a, 'Harmonic Mean',header=TRUE) a<-table.element(a,signif(har,6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a, 'Quadratic Mean',header=TRUE) a<-table.element(a,signif(qua,6)) 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, mylabel,header=TRUE) a<-table.element(a,signif(win[j,1],6)) a<-table.element(a,signif(win[j,2],6)) a<-table.element(a,signif(win[j,1]/win[j,2],6)) 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, mylabel,header=TRUE) a<-table.element(a,signif(tri[j,1],6)) a<-table.element(a,signif(tri[j,2],6)) a<-table.element(a,signif(tri[j,1]/tri[j,2],6)) a<-table.row.end(a) } a<-table.row.start(a) a<-table.element(a, 'Median',header=TRUE) a<-table.element(a,signif(median(x),6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a, 'Midrange',header=TRUE) a<-table.element(a,signif(midr,6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) mymid <- 'Midmean' mylabel <- paste(mymid,'Weighted Average at Xnp',sep=' - ') a<-table.element(a,mylabel,header=TRUE) a<-table.element(a,signif(midm[1],6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) mymid <- 'Midmean' mylabel <- paste(mymid,'Weighted Average at X(n+1)p',sep=' - ') a<-table.element(a,mylabel,header=TRUE) a<-table.element(a,signif(midm[2],6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) mymid <- 'Midmean' mylabel <- paste(mymid,'Empirical Distribution Function',sep=' - ') a<-table.element(a,mylabel,header=TRUE) a<-table.element(a,signif(midm[3],6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) mymid <- 'Midmean' mylabel <- paste(mymid,'Empirical Distribution Function - Averaging',sep=' - ') a<-table.element(a,mylabel,header=TRUE) a<-table.element(a,signif(midm[4],6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) mymid <- 'Midmean' mylabel <- paste(mymid,'Empirical Distribution Function - Interpolation',sep=' - ') a<-table.element(a,mylabel,header=TRUE) a<-table.element(a,signif(midm[5],6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) mymid <- 'Midmean' mylabel <- paste(mymid,'Closest Observation',sep=' - ') a<-table.element(a,mylabel,header=TRUE) a<-table.element(a,signif(midm[6],6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) mymid <- 'Midmean' mylabel <- paste(mymid,'True Basic - Statistics Graphics Toolkit',sep=' - ') a<-table.element(a,mylabel,header=TRUE) a<-table.element(a,signif(midm[7],6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.row.start(a) mymid <- 'Midmean' mylabel <- paste(mymid,'MS Excel (old versions)',sep=' - ') a<-table.element(a,mylabel,header=TRUE) a<-table.element(a,signif(midm[8],6)) 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,signif(length(x),6)) a<-table.element(a,'') a<-table.element(a,'') a<-table.row.end(a) a<-table.end(a) table.save(a,file='mytable.tab')
Compute
Summary of computational transaction
Raw Input
view raw input (R code)
Raw Output
view raw output of R engine
Computing time
0 seconds
R Server
Big Analytics Cloud Computing Center
Click here to blog (archive) this computation