[R] subset

Liaw, Andy andy_liaw at merck.com
Wed Feb 9 15:13:13 CET 2005


Something like:

> x[rowSums(x[,-1]) > 0,]
  species site1 site2 site3 site4
1    sp.1     2     0     0     0
2    sp.2     3     0     1     0
4    sp.4     0     0     6     0

Andy

> From: Rogerio Rosa da Silva
> 
> 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.
> 
> -- 
> Rogério R. Silva
> MZUSP http://www.mz.usp.br
> Linux/Debian User # 354364
> Linux counter http://counter.li.org
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! 
> http://www.R-project.org/posting-guide.html
> 
>




More information about the R-help mailing list