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 location Launceston     max temp  17.7
## Observation       2 location Watsonia       max temp  14.4
## Observation       3 location Adelaide       max temp  33.7
## Observation       4 location Sale           max temp  20.2
## Observation       5 location Townsville     max temp  26.7
## Observation       6 location Cobar          max temp  20.1

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 Penrith of 23.8-30.6
## Observed temperature range at Brisbane of 14.7-28.9
## Observed temperature range at Perth of 9.2-28.3
## Observed temperature range at Melbourne of 7-17
## Observed temperature range at Ballarat of 11.8-30.7
## Observed temperature range at Darwin of 19.9-35


Your donation will support ongoing availability 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-2022 Graham.Williams@togaware.com Creative Commons Attribution-ShareAlike 4.0