在R中,当我向列表中添加一个空向量时,它实际上并没有添加,如下所示:
a = list()
a[[1]] = c()
print(length(a))
Run Code Online (Sandbox Code Playgroud)
length(a)在这种情况下将打印0,而如果我将第2行更改为a[[1]] = c(1),则列表的长度将为1,如预期的那样.在我的实现中,即使我向列表中添加一个空向量,我也需要更改列表长度.有没有办法做到这一点?
使用诸如vector()(逻辑)之类的东西并将character()特定类分配给您希望保持“空”的元素。我会使用 NULL 类。[<-您可以使用代替 来分配 NULL 列表元素[[<-。
a <- list()
a[1] <- list(NULL)
a
# [[1]]
# NULL
length(a)
# [1] 1
Run Code Online (Sandbox Code Playgroud)