提问人:GiulioGCantone 提问时间:7/17/2023 最后编辑:GiulioGCantone 更新时间:7/18/2023 访问量:20
在 tidyverse 的函数式编程中将主要参数 tibble 列作为次要参数进行管理
Management of columns of primary argument tibbles as secondary arguments, in functional programming in tidyverse
问:
Functions$diversity <- function(db,entity,trait,v){
db %>%
summarize(crossed = list(crossing(trait, trait)),
.by = entity) %>%
unnest(crossed) %>%
rename(
i = trait...1,
j = trait...2
) %>%
left_join(db %>% transmute(
entity,
i = trait,
p_i = v
)
) %>%
left_join(db %>% transmute(
entity,
j = trait,
p_j = v
)
)
}
在这里,我无法管理如何使函数理解这一点
- 参数确实是 ,但参数 和 是 的列。
db
tibble
entity
trait
v
entity
trait...1
是unnest
我知道我应该使用 ,或者但我尝试的所有方法似乎都不起作用。paste
glue
targets
更新:
f <- function(db, entity, trait) {
db %>%
summarise(i = crossing({{ trait }},{{ trait }}),
.by = {{ entity }})
}
db <- data.frame(
entity = c("A", "A", "B", "B"),
beta = c("X", "Y", "X", "Z")
)
f(db,entity,beta)
我认为这即使对卷曲也不起作用?
你能向我证实这一点吗?crossing
答: 暂无答案
评论