在 R 中,是否有一种使用函数命名单个列表元素的简单方法



这是我正在尝试做的事情的简化版本:

a <- list("1" = 10, as.character(2) = 20)

我期望的是as.character(2)返回"2",a随后返回:

> a
$`1`
[1] 10
$`2`
[1] 20

相反,我收到以下错误:

Error: unexpected '=' in "a <- list("1" = 1, as.character(2)[1] ="

有没有办法在一条线上做到这一点而不必沿着names(a) <- *namesVector*路线倒退?

如果我们想做as.character,可以通过在做赋值时计算(!!(字符串来完成dplyr::lst(:=(

dplyr::lst("1" = 10, !!as.character(2) := 20)
#$`1`
#[1] 10
#$`2`
#[1] 20

最新更新