[R] getting sapply to skip columns with non-numeric data?
andy_liaw at merck.com
Fri Aug 18 01:30:01 CEST 2006
There's something that either you have not thought of or neglected to tell
us: If you have k variables in the data frame, you will need a data frame
of k variables and one row to be able to rbind() to the bottom of the
original one. What are you going to put in place for non-numeric variables?
Perhaps this might help:
R> dat <- data.frame(f=factor(1:3), x=3:5, y=6:4)
R> rbind(dat, as.data.frame(lapply(dat, function(x) if (!is.numeric(x)) NA
f x y
1 1 3 6
2 2 4 5
3 3 5 4
11 <NA> 4 5
From: r user
> getting s-apply to skip columns with non-numeric data?
> I have a dataframe "x" of w columns.
> Some columns are numeric, some are not.
> I wish to create a function to calculate the mean and
> standard deviation of each numeric column, and then "bind"
> the column mean and standard deviation to the bottom of the dataframe.
> tempmean <- apply(data.frame(x), 2, mean, na.rm = T) xnew <-
> I am running into one small problem...what is the best way to
> have sapply "skip" the non-numeric data and return NA's?
> R-help at stat.math.ethz.ch mailing list
> PLEASE do read the posting guide
> and provide commented, minimal, self-contained, reproducible code.
More information about the R-help