Remove non-numerical columns from data frame
Henrique Dallazuanna wrote:
Try this:
x <- data.frame(A=c(10,20), B = c("a", "b"), C = c(20,30))
x[sapply(x, is.numeric)]
Yes, and read ?Extract to clear up the confusion between data$vol and data[257] and data[[257]] (Section on "Recursive (list-like) objects:"). Also, ?Extract.data.frame.
On Sat, Jul 26, 2008 at 11:19 AM, Markus M?hlbacher <muehliman at yahoo.com> wrote:
Hello,
My question sounds simple, but as I am desperatly searchin for a solution I am
asking you all. :)
I try to filter out all non-numeric columns of a data frame using a for loop
to go through all columns. My if clause looks like this:
for(j in 1:length(data)) {
...
if(!is.numeric(data[j])) skip <- "not numeric")
...
}
When I do: is.numeric(data$vol) i get TRUE as result:
unfortunately this is not applicable in a for loop, because i need to go
through all of the columns using j.
I also tried to paste data$ and the name of the column , but this is always a
character.
When I do: is.numeric(data[257]) i get FALSE as result
(257 is the corresponding column index to "vol")
O__ ---- Peter Dalgaard ?ster Farimagsgade 5, Entr.B c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907