3.16 Pipes: Tee Pipe Intermediate Results

20220511 The tee-pipe comes in handy with base::assign()ing intermediate results into a variable without breaking the main flow of the pipeline. In the following example the variable tmp has an intermediate value assigned to it within the base::globalenv() so that we can access it from anywhere in the R session.

ds %>%
  select(rainfall, min_temp, max_temp, sunshine) %>%
  filter(rainfall==0) %T>%
  assign("tmp", ., globalenv()) %>%
  select(min_temp, max_temp, sunshine) %>%
  summary()
##     min_temp        max_temp        sunshine    
##  Min.   :-8.70   Min.   :-2.10   Min.   : 0.00  
##  1st Qu.: 7.40   1st Qu.:19.80   1st Qu.: 6.90  
##  Median :12.10   Median :24.60   Median : 9.70  
##  Mean   :12.15   Mean   :24.97   Mean   : 8.72  
##  3rd Qu.:16.90   3rd Qu.:30.00   3rd Qu.:11.10  
##  Max.   :33.90   Max.   :48.90   Max.   :14.50  
##  NA's   :518     NA's   :537     NA's   :59508

We can now access the variable tmp:

print(tmp)
## # A tibble: 112,447 × 4
##    rainfall min_temp max_temp sunshine
##       <dbl>    <dbl>    <dbl>    <dbl>
##  1        0      7.4     25.1       NA
##  2        0     12.9     25.7       NA
##  3        0      9.2     28         NA
##  4        0     14.3     25         NA
##  5        0      7.7     26.7       NA
##  6        0      9.7     31.9       NA
##  7        0     13.4     30.4       NA
##  8        0      8.4     24.6       NA
##  9        0     14.1     20.9       NA
## 10        0      9.8     25.6       NA
## # … with 112,437 more rows

Notice that for a tee-pipe curly braces will often be used to encapsulate a sequence of operations for the first path of the tee-pipe, allowing reference the data from the pipeline as the period (.).



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-2021 Graham.Williams@togaware.com Creative Commons Attribution-ShareAlike 4.0