[R] subset
John Fox
jfox at mcmaster.ca
Wed Feb 9 15:44:34 CET 2005
Dear Rogerio,
x[rowSums(x[,2:5]) != 0,] should do what you want.
I hope this helps,
John
--------------------------------
John Fox
Department of Sociology
McMaster University
Hamilton, Ontario
Canada L8S 4M4
905-525-9140x23604
http://socserv.mcmaster.ca/jfox
--------------------------------
> -----Original Message-----
> From: r-help-bounces at stat.math.ethz.ch
> [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of
> Rogerio Rosa da Silva
> Sent: Wednesday, February 09, 2005 8:52 AM
> To: r-help at stat.math.ethz.ch
> Subject: [R] subset
>
> 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