pewresearch / pewmethods

Pew Research Center Methods team R package of miscellaneous functions
MIT License
191 stars 26 forks source link

make df the first argument in get_totals to work more seamlessly with dplyr #3

Open jamesmartherus opened 4 years ago

jamesmartherus commented 4 years ago

Tidyverse functions generally take the data argument first, making it easier to use the %>% operator. For example:

dec13_excerpt <- dec13_excerpt %>% mutate(fake_weight = coalesce(llweight, cellweight))
get_totals("q1", dec13_excerpt, wt = c("weight", "fake_weight"), include_unw = TRUE)

becomes:

dec13_excerpt <- dec13_excerpt %>%
 mutate(fake_weight = coalesce(llweight, cellweight)) %>%
 get_totals("q1", wt = c("weight", "fake_weight"), include_unw = TRUE)

Happy to submit a PR if you all are interested. This change could be relevant to other functions as well, I haven't checked.

arnoldlcl commented 4 years ago

Thanks for raising this issue! get_totals() was one of the first functions we made and it wasn't designed from the ground up to work with tidyverse and piping. We've been considering making this change in the next release but it would require updating a lot of other bits of code on our end as well, so it's something we need to spec out properly.