Hi, I am trying to calculate the geometric mean with tapply. This is the formula I am using: exp(tapply(log(data$value), data$group, mean)) However, it returns the arithmetic mean. Any ideas? Thanks -- Shane [[alternative HTML version deleted]]
Hello, You can write a function gmean and tapply it to your data. gmean <- function(x, na.rm = FALSE){ if(na.rm) x <- x[!is.na(x)] n <- length(x) prod(x)^(1/n) } tapply(data$value, data$group, gmean) Hope this helps, Rui Barradas Em 25-06-2013 11:58, Shane Carey escreveu:> Hi, > > I am trying to calculate the geometric mean with tapply. This is the > formula I am using: > > exp(tapply(log(data$value), data$group, mean)) > > > However, it returns the arithmetic mean. Any ideas? > > > Thanks > >