generated from curso-r/template-pagina-do-curso
-
Notifications
You must be signed in to change notification settings - Fork 0
/
params_purrr.R
96 lines (72 loc) · 1.54 KB
/
params_purrr.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
library(quarto)
caminho_qmd <- "praticas/aula-2/pratica-aula-2.qmd"
quarto_render(
caminho_qmd,
execute_params = list(estado = "CE"),
output_file = "praticas/aula-2/CE.html",
quiet = TRUE
)
sigbm <- readxl::read_excel("praticas/aula-2/dados/sigbm.xlsx", skip = 4)
sigbm$UF
estados_no_sigbm <- sort(unique(sigbm$UF))
## mas isso aqui não é tão divertido...
# for (estado in estados_no_sigbm) {
#
# }
# purrr!!!! ---------------------------------------------------------------
library(purrr)
sqrt(1)
sqrt(2)
sqrt(3)
raizes <- c()
for (i in 1:3) {
raizes[i] <- sqrt(i)
}
map(1:3, sqrt)
map(1:3, ~ .x ^ 3)
# resumindo
map(
vetor_que_quero_iterar, # -> estados_no_sigbm
funcao_de_iteracao # -> quarto_render...
)
## obs: glue
nome <- "jubs"
glue::glue("Meu nome é {nome}")
# rstudioapi::job
map(
estados_no_sigbm,
~quarto_render(
caminho_qmd,
execute_params = list(estado = .x),
output_file = glue::glue("praticas/aula-2/{.x}.html"),
quiet = TRUE,
as_job = TRUE
)
)
map(
estados_no_sigbm,
~quarto_render(
caminho_qmd,
output_format = "docx",
execute_params = list(estado = .x),
output_file = glue::glue("praticas/aula-2/{.x}.docx"),
quiet = TRUE#,
# as_job = TRUE
)
)
## função walk: roda o código, mas não retorna nada
walk(
1:3,
~print(sqrt(.x))
)
walk(
estados_no_sigbm,
~quarto_render(
"pratica-aula-2.qmd",
output_format = "docx",
execute_params = list(estado = .x),
output_file = glue::glue("{.x}.docx"),
quiet = TRUE#,
# as_job = TRUE
)
)