3.1 Pipe %>%
Considere o seguinte exemplo:
f <- function(x, y) x + y
x <- 1
y <- 2
As duas linhas abaixo são equivalentes:
f(x, y)
#> [1] 3
x %>% f(y)
#> [1] 3
Exemplo: alcular raiz quadrada da soma dos valores de 1 a 4.
x <- c(1, 2, 3, 4)
x %>% sum() %>% sqrt()
#> [1] 3.162278
Escrever esse cálculo na forma usual ficaria da seguinte forma:
sqrt(sum(x))
#> [1] 3.162278
3.1.1 Receita de bolo
Tente entender o que é preciso fazer.
esfrie(
asse(
coloque(
bata(
acrescente(
recipiente(rep("farinha", 2), "água",
"fermento", "leite", "óleo"),
"farinha", até = "macio"),
duração = "3min"),
lugar = "forma", tipo = "grande",
untada = TRUE), duração = "50min"),
"geladeira", "20min")
Desistiu? Agora veja como fica escrevendo com o %>%
:
recipiente(rep("farinha", 2), "água", "fermento", "leite", "óleo") %>%
acrescente("farinha", até = "macio") %>%
bata(duraço = "3min") %>%
coloque(lugar = "forma", tipo = "grande", untada = TRUE) %>%
asse(duração = "50min") %>%
esfrie("geladeira", "20min")
Agora o código realmente parece uma receita de bolo.
Para mais informações sobre o pipe
e exemplos de utilização, visite a página Ceci n’est pas un pipe.