[R] dplyr - counting a number of specific values in each column - for all columns at once

Dimitri Liakhovitski dimitri.liakhovitski at gmail.com
Tue Jun 16 19:42:39 CEST 2015


No problem at all, Clint.
I was just trying to figure out of dplyr can do it.

On Tue, Jun 16, 2015 at 1:40 PM, Clint Bowman <clint at ecy.wa.gov> wrote:
> Any problem with
>
> colSums(md==5, na.rm=T)
>
> Clint Bowman                    INTERNET:       clint at ecy.wa.gov
> Air Quality Modeler             INTERNET:       clint at math.utah.edu
> Department of Ecology           VOICE:          (360) 407-6815
> PO Box 47600                    FAX:            (360) 407-7534
> Olympia, WA 98504-7600
>
>         USPS:           PO Box 47600, Olympia, WA 98504-7600
>         Parcels:        300 Desmond Drive, Lacey, WA 98503-1274
>
>
> On Tue, 16 Jun 2015, Dimitri Liakhovitski wrote:
>
>> Hello!
>>
>> I have a data frame:
>>
>> md <- data.frame(a = c(3,5,4,5,3,5), b = c(5,5,5,4,4,1), c =
>> c(1,3,4,3,5,5),
>>      device = c(1,1,2,2,3,3))
>> myvars = c("a", "b", "c")
>> md[2,3] <- NA
>> md[4,1] <- NA
>> md
>>
>> I want to count number of 5s in each column - by device. I can do it like
>> this:
>>
>> library(dplyr)
>> group_by(md, device) %>%
>> summarise(counts.a = sum(a==5, na.rm = T),
>>          counts.b = sum(b==5, na.rm = T),
>>          counts.c = sum(c==5, na.rm = T))
>>
>> However, in real life I'll have tons of variables (the length of
>> 'myvars' can be very large) - so that I can't specify those counts.a,
>> counts.b, etc. manually - dozens of times.
>>
>> Does dplyr allow to run the count of 5s on all 'myvars' columns at once?
>>
>>
>> --
>> Dimitri Liakhovitski
>>
>> ______________________________________________
>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> 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.
>>
>



-- 
Dimitri Liakhovitski



More information about the R-help mailing list