Skip to content
Prev 200354 / 398503 Next

wilcox.test loop through variable names

On Sun, 15 Nov 2009 14:33 -0500, "Jacob Wegelin"
<jacobwegelin at fastmail.fm> wrote:
Here is a solution:

rm(environmental)
thesevars<-names(environmental)
environmental$ToyReal <-rnorm(nrow(environmental))
environmental$ToyDichot<- environmental$ToyReal < 0.53

ThisList<-
lapply( environmental[thesevars], function( OneVar ) {
   c(
      p_wilcox= wilcox.test( OneVar ~ environmental$ToyDichot )$p.value
         ,
      Beta_lm = as.numeric(coef(lm( environmental$ToyReal ~ OneVar
      ))["OneVar"])
   )
   }
)

do.call("rbind", ThisList)

Jacob A. Wegelin 
Department of Biostatistics 
Virginia Commonwealth University 
Richmond VA 23298-0032 
U.S.A.