小编Kei*_*ley的帖子

在R中,如何构造一个包含名称包含在变量中的元素的匿名列表?

我想在R中的列表中插入一个元素.问题是我希望它在变量中包含一个名称.

> list(c = 2)
$c
[1] 2
Run Code Online (Sandbox Code Playgroud)

说得通.我显然想要一个名为'c'的列表项,包含2.

> a <- "b"
> list(a = 1)
$a
[1] 1
Run Code Online (Sandbox Code Playgroud)

哎呦.当我创建列表时,如何在需要时将R视为变量而不是名称?

我试过的一些事情:

> list(eval(a)=2)
Error: unexpected '=' in "list(eval(a)="
> list(a, 2)
[[1]]
[1] "b"

[[2]]
[1] 2
> list(get(a) = 2)
Error: unexpected '=' in "list(get(a) ="
Run Code Online (Sandbox Code Playgroud)

我知道如果我已经有一个list(),我可以这样做:

> ll<-list()
> ll[[a]]=456
> ll
$b
[1] 456
Run Code Online (Sandbox Code Playgroud)

...但:

> list()[[a]]=789
Error in list()[[a]] = 789 : invalid (NULL) left side of assignment
Run Code Online (Sandbox Code Playgroud)

如何构造一个包含名称包含在变量中的元素的匿名列表?

r indirection

1
推荐指数
1
解决办法
168
查看次数

标签 统计

indirection ×1

r ×1