我想了解在clojure中对不同大小的集合进行操作的惯用方法.有没有办法告诉函数'map'用一些默认值填充集合的其余部分?
举个例子,假设我有3个向量:
(def x [1 2 3 4])
(def y [1 2 3 4 5])
(def z [1 2 3 4 5 6 7])
(map + x y z) ; yields (3 6 9 12)
Run Code Online (Sandbox Code Playgroud)
在这种情况下,如何用零填充x和y并获得此收益:
(3 6 9 12 10 6 7)
Run Code Online (Sandbox Code Playgroud) 有没有一种方法可以自动给由给定的返回列表命名purrr:map?
例如,我经常运行这样的代码。
fn <- function(x) { paste0(x, "_") }
l <- map(LETTERS, fn)
names(l) <- LETTERS
Run Code Online (Sandbox Code Playgroud)
我希望可以自动将其转换为结果列表名称的向量。