data <- cbind(rnorm(100),rnorm(100),rnorm(100)) outlier <- function(xrow){ m <- mean(xrow) devs <- abs(xrow - m) pos <- which.max(devs) val <- devs[pos] out <- c(pos,val) return(out) } out <- apply(data,1,outlier) out.t <- t(out)