使用 purrr 的函数式编程进阶
Colin Fay
Data Scientist & R Hacker at ThinkR
使用 transpose() 转换结果:
# Transpose turn a list of n elements a and b
# to a list of a and b, with each n elements
l <- list("a", 2, 3)
map(l, safe_log) %>% length()
3
map(l, safe_log) %>% transpose() %>% length()
2
compact() 移除 NULL:
list(1, NULL, 3, 4, NULL) %>%
compact()
[[1]]
[1] 1
[[2]]
[1] 3
[[3]]
[1] 4
otherwise = NULL %>% compact():
l <- list(1,2,3,"a")
possible_log <- possibly(log, otherwise = NULL)
map(l, possible_log) %>% compact()
[[1]]
[1] 0
[[2]]
[1] 0.6931472
[[3]]
[1] 1.098612
httr:R 的友好 http 包
H. Wickham
httr 入门
H. Wickham
使用 purrr 的函数式编程进阶