) Я нашел такое поведение странным и хотел, чтобы более опытные пользователи поделились своими мыслями и обходными путями. При запуске пример кода ниже в R:
sampleList <- list()
d<- data.frame(x1 = letters[1:10], x2 = 1:10, stringsAsFactors = FALSE)
for(i in 1:nrow(d)) {
sampleList[[i]] <- d$x1[i]
}
print(sampleList[[1]])
#[1] "a"
print(sampleList[[2]])
#[1] "b"
print(sampleList[[3]])
#[1] "c"
print(length(sampleList))
#[1] 10
sampleList[[2]] <- NULL
print(length(sampleList))
#[1] 9
print(sampleList[[2]])
#[1] "c"
print(sampleList[[3]])
#[1] "d"
Элементы списка сдвигаются вверх. Возможно, это так, как ожидалось, но я пытаюсь реализовать функцию, в которой я объединяю два элемента списка и отбрасываю один. Я в основном хотите потерять индекс этого списка или присвоить ему значение NULL.
Можно ли каким-либо образом присвоить ему значение NULL и не увидеть описанного выше поведения?
Спасибо за ваши предложения.