[R] remove columns containing all zeros (or other value)

Gustavo Carvalho gustavo.bio+R at gmail.com
Wed Jan 14 23:29:37 CET 2009


Sorry for the double post, but this is probably faster:

x[, colSums(x) != 0]

On Wed, Jan 14, 2009 at 8:22 PM, Gustavo Carvalho
<gustavo.bio+R at gmail.com> wrote:
> You can also try this:
>
> x[,-(which(colSums(x) == 0))]
>
> Cheers,
>
> Gustavo.
>
> On Wed, Jan 14, 2009 at 8:01 PM, Anthony Dick <adick at uchicago.edu> wrote:
>> Hello-
>>
>> I would like to remove the columns of a matrix that contain all zeros. For
>> example, from
>> x<-matrix(c(1,5,3,2,1,4,0,0,0), ncol=3,nrow=3)
>>
>> I would like to remove the third column. However, because this is in a loop
>> I need a way to first determine which columns are all zeros, and only then
>> remove them. I.e., I don't know which column of x contains all zeros until
>> after x is created.
>>
>> Thanks!
>>
>> Anthony
>>
>> --
>> Anthony Steven Dick, Ph.D.
>> Post-Doctoral Fellow
>> Human Neuroscience Laboratory
>> Department of Neurology
>> The University of Chicago
>> 5841 S. Maryland Ave. MC-2030
>> Chicago, IL 60637
>> Phone: (773)-834-7770
>> Email: adick at uchicago.edu
>> Web: http://home.uchicago.edu/~adick/
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>




More information about the R-help mailing list