比较
mtcars %>% mutate(a = pmap(list(gear, carb), sum))
如期 "工作",与
mtcars %>% mutate(a = pmap(list(gear, carb), mean))
这不。
显然我漏掉了什么。
区别与函数接口有关。sum()
接受任何数量的参数(通常被称为 "点"),而 mean()
期待一个向量。
sum( 1, 2, 3 ) # 6
mean( c(1,2,3) ) # 2
要使用一个基于向量的函数,比如 mean()
与 pmap()
,你可以 撤域 从矢量到点。
mtcars %>% mutate(a = pmap(list(gear, carb), lift_vd(mean))) # Now works as expected