sample.mean.CI.transform <- function(x, transform.func = identity, anti.transform.func = identity) { ## Purpose: ## Calculate the mean and 95% CI of a sample of numbers under a transform. ## ## Author: Feiming Chen ## ## Arguments: ## - x : a vector of positive numerical values ## - transform.func: a function for transforming the original values to a new scale. ## - anti.transform.func: a function for back-transforming the values to the original scale. ## ## Return: ## - m : mean based on a particular transform function. ## ## ________________________________________________ y <- transform.func(x) # transform to a new scale a <- t.test(y) # estimate the mean and 95% CI based on t-distribution c(anti.transform.func(a$estimate), CI = anti.transform.func(a$conf.int)) } if (F) { # Unit Test x <- exp(1:10) sample.mean.CI.transform(x) # no transform ## estimate the mean under the log-normal distributional assumption sample.mean.CI.transform(x, transform.func = log, anti.transform.func = exp) }
Tuesday, February 28, 2023
Calculate the mean and 95% confidence interval of a sample of numbers under a transform
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment