Confidence Interval for the Mean
Collection of several approaches to determine confidence intervals for the mean. Both, the classical way and bootstrap intervals are implemented for both, normal and trimmed means.
MeanCI(x, sd = NULL, trim = 0, method = c("classic", "boot"), conf.level = 0.95, sides = c("two.sided", "left", "right"), na.rm = FALSE, ...)
x |
a (non-empty) numeric vector of data values. |
sd |
the standard deviation of x. If provided it's interpreted as sd of the population and the normal quantiles will be used for constructing the confidence intervals. If left to |
trim |
the fraction (0 to 0.5) of observations to be trimmed from each end of |
method |
A vector of character strings representing the type of intervals required. The value should be any subset of the values |
conf.level |
confidence level of the interval. |
sides |
a character string specifying the side of the confidence interval, must be one of |
na.rm |
a logical value indicating whether |
... |
further arguments are passed to the |
The confidence intervals for the trimmed means use winsorized variances as described in the references.
a numeric vector with 3 elements:
mean |
mean |
lwr.ci |
lower bound of the confidence interval |
upr.ci |
upper bound of the confidence interval |
Andri Signorell <andri@signorell.net>
Wilcox, R. R., Keselman H. J. (2003) Modern robust data analysis methods: measures of central tendency Psychol Methods, 8(3):254-74
Wilcox, R. R. (2005) Introduction to robust estimation and hypothesis testing Elsevier Academic Press
x <- d.pizza$price[1:20] MeanCI(x, na.rm=TRUE) MeanCI(x, conf.level=0.99, na.rm=TRUE) MeanCI(x, sides="left") # same as: t.test(x, alternative="greater") MeanCI(x, sd=25, na.rm=TRUE) # the different types of bootstrap confints MeanCI(x, method="boot", type="norm", na.rm=TRUE) MeanCI(x, trim=0.1, method="boot", type="norm", na.rm=TRUE) MeanCI(x, trim=0.1, method="boot", type="basic", na.rm=TRUE) MeanCI(x, trim=0.1, method="boot", type="stud", na.rm=TRUE) MeanCI(x, trim=0.1, method="boot", type="perc", na.rm=TRUE) MeanCI(x, trim=0.1, method="boot", type="bca", na.rm=TRUE) MeanCI(x, trim=0.1, method="boot", type="bca", R=1999, na.rm=TRUE) # Getting the MeanCI for more than 1 column round( do.call("rbind", lapply(d.pizza[, 1:4], MeanCI, na.rm=TRUE)), 3)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.