6.6 Glue Pipelines

20180729 We can use glue::glue_data() within pipes and operate over the rows of the data that is piped into the operator.

weatherAUS %>%
  sample_n(6) %>%
  glue_data("Observation",
            " {rownames(.) %>% as.integer() %>% comma() %>% sprintf('%7s', .)}",
            " location {Location %>% sprintf('%-14s', .)}",
            " max temp {MaxTemp %>% sprintf('%5.1f', .)}")
## Observation     1.0 location NorahHead      max temp  21.6
## Observation     2.0 location Wollongong     max temp  21.7
## Observation     3.0 location Sale           max temp  24.4
## Observation     4.0 location Townsville     max temp  28.8
## Observation     5.0 location Ballarat       max temp  21.9
## Observation     6.0 location Nhil           max temp  11.7

It can also be useful with the tidy verse work flow.

weatherAUS %>%
  sample_n(6) %>%
  mutate(TempRange = glue("{MinTemp}-{MaxTemp}")) %>%
  glue_data("Observed temperature range at {Location} of {TempRange}")
## Observed temperature range at Perth of 15-24.6
## Observed temperature range at Albury of 20.8-31.8
## Observed temperature range at Cairns of 22.2-29.7
## Observed temperature range at Albury of 1.4-16.2
## Observed temperature range at Newcastle of 12.8-19.8
## Observed temperature range at Sydney of 8.9-17.4


Your donation will support ongoing development and give you access to the PDF version of this book. Desktop Survival Guides include Data Science, GNU/Linux, and MLHub. Books available on Amazon include Data Mining with Rattle and Essentials of Data Science. Popular open source software includes rattle, wajig, and mlhub. Hosted by Togaware, a pioneer of free and open source software since 1984.
Copyright © 1995-2021 Graham.Williams@togaware.com Creative Commons Attribution-ShareAlike 4.0.