[R] dplyr - counting a number of specific values in each column - for all columns at once
Clint Bowman
clint at ecy.wa.gov
Tue Jun 16 19:40:08 CEST 2015
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.
>
More information about the R-help
mailing list