我是 R 新手。我一直在尝试将向量添加到 R 中列表的末尾,但它似乎不起作用。
这是我尝试过的:
L <- list("audrey", 19, TRUE)
L["new"] <- c(1,2,3) # doesn't work
v1 <- c(1,2,3)
L["new"] <- v1 # doesn't work
这两个代码都抛出相同的错误,
number of items to replace is not a multiple of replacement length
。
我希望两者都能工作,因为在创建列表时,以下工作有效:
J <- list("audrey", 19, TRUE, c(1,2,3))
v2 <- c(1,2,3)
K <- list("mary", 20, v2)
我认为它会起作用,因为我似乎只是将一个新向量附加到带有命名索引的列表末尾。现在看来我必须重新定义列表才能在末尾添加向量?
希望能解释为什么会引发错误,以及是否有一种方法可以实现我想要做的事情而无需重新定义列表。谢谢!
尝试使用双括号而不是单括号。
L <- list("audrey", 19, TRUE)
L[["new"]] <- c(1,2,3)
这应该可行,因为单括号用于子集,而双括号用于提取或替换 我希望这有帮助