R:列表中的空值会自动删除元素吗?

时间:2017-08-09 04:54:21

标签: r list

myls <- vector("list", length = 15)
for(j in 1:15){
  myls[[j]] = NULL
}
> length(myls)
[1] 7

我有一个包含15个元素的列表,并为所有15传递NULL值。但是,结果列表的长度只有7 NULL个值?其他8个怎么了?

1 个答案:

答案 0 :(得分:1)

分配myls[[j]] = NULL会从向量中删除第j个元素。因此,在每次迭代直到/包括j = 8时,myls缩短为1.在j = 8次迭代之后,它的长度为7,后续迭代不执行任何操作。

如果您想将元素设置为NULL,请使用myls[j] = list(NULL)