[R] subset
Chuck Cleland
ccleland at optonline.net
Wed Feb 9 15:11:51 CET 2005
subset(x, rowSums(x[,-1], na.rm=TRUE) != 0)
Rogerio Rosa da Silva wrote:
> Dear all,
>
> I am trying to extract rows from a data.frame based on the
> rowSums != 0. I want to preserve rownames in the first column in the subset.
>
> Does anyone know how to extract all species that don't have rowSums equal
> to zero? Here it is:
>
> # dataset
> x <- data.frame(
> species=c("sp.1","sp.2","sp.3","sp.4"),
> site1=c(2,3,0,0),
> site2=c(0,0,0,0),
> site3=c(0,1,0,6),
> site4=c(0,0,0,0))
>
> #I want extract the matrix:
>
> species site1 site2 site3 site4
> sp.1 2 0 0 0
> sp.2 3 0 1 0
> sp.4 0 0 6 0
>
> #extract data.frame of rowSums with x[,2:4] != 0
>
> subset (x, apply (x,1,function(row) all(rowSums(x[,2:4] !=0)) ## don't work
>
>
> Thanks in advance.
>
--
Chuck Cleland, Ph.D.
NDRI, Inc.
71 West 23rd Street, 8th floor
New York, NY 10010
tel: (212) 845-4495 (Tu, Th)
tel: (732) 452-1424 (M, W, F)
fax: (917) 438-0894
More information about the R-help
mailing list