这可能是一个非常简单的问题,但我无法解决我的问题。以下代码返回错误:
person = c("name", "surname")
list(person[1]= "John")
Error : '=' unexpected in "list(person[1]="
我希望它返回:
$name
[1] "John"
StackOverflow可以帮我解决这个问题吗?
答案 0 :(得分:6)
以下可能会有用:
> p <- list("John", "Smith")
> names(p) <- c("name", "surname")
> p
$name
[1] "John"
$surname
[1] "Smith"
答案 1 :(得分:2)
由于您似乎试图通过命名变量访问列表元素,这可能就是您所追求的。这与aix的答案几乎相同,但是通过不同的路线。
person = c("name", "surname")
创建空列表,以后在增长列表时效率低下。
x <- list()
现在通过“person”值为此列表分配值。
x[person[1]] <- "John"
x[person[2]] <- "Smith"
x
$name
[1] "John"
$surname
[1] "Smith"
当你想继续增加清单时,我不认为这会有多大帮助,但它可能会帮助你看到这些东西如何运作得更好。