У меня есть список с ~ 500 модельными объектами.Имена этих объектов v1:
existing.list <- vector("list", 3)
v1 <- names(existing.list) <- c("A", "B", "C")
Теперь я получаю другой набор данных, который мне тоже нужно смоделировать и сохранить в том же списке.Объекты в этом новом наборе данных перекрываются с некоторыми из объектов в existing.list
.Поскольку это занимает много времени, я хочу сохранить старые результаты.Имена этого нового набора данных: v2:
v2 <- c("B", "C", "D")
Сначала я хочу удалить объекты в v1, которых нет в v2, а затем добавить в существующий. Список всех новых уникальных имен из v2.Я могу выполнить первое задание довольно сложным способом:
rm <- v1[!v1 %in% v2]
rm.i <- which(v1 %in% rm)
v1 <- v1[-rm.i]
Но тогда мне не удается добавить новые объекты, как определено уникальными элементами в v2:
new.elements <- v2[!v2 %in% v1]
желаемый результат - модифицированный existing.list
, с неповрежденными элементами "B" и "C" и новым пустым элементом "D".По сути, это список с элементами, определяемыми именами в v2
, но по ряду причин было бы сложно просто создать новый список и скопировать в него части existing.list
.Поскольку мне нужно сделать это для нескольких списков, подойдет менее сложный способ, чем я делаю сейчас.
Заранее большое спасибо!Это последнее добавление к проекту, поэтому любая помощь высоко ценится!
Этот вопрос основан на предыдущем вопросе , который я небрежно сформулировал и таким образом создал путаницу.Спасибо тем пользователям, которые все еще пытались мне помочь.