Я стараюсь вставлять несколько элементов в вектор каждый в разных местах. Это пример, за которым следует ряд испытаний, которые не работают.Добавить ряд элементов в разных местах в пределах вектора
w <- c(1,3,2,4,2,3,2,4,5,7,9,3,2,4,2,5,7,4,2)
u <- c(3,7,9,12)
o <- c(10 , 20 , 30 , 40)
Я попытался:
append (w , o , after = u)
# which adds the series one time in the first location of after
fun <- function (x) append (w , o[[x]] , after = u[[x]])
lapply (seq (length (u)) , fun)
# which adds one element to the list each time for a new vector producing a number of vectors
for (i in length(o)) {
append (w , o[[i]] , after = u[[i]])
}
# which basically does nothing
Желаемая Выход
1,3,2,10,4,2,3,2,20,4,5,30,7,9,3,40,2,4,2,5,7,4,2
Есть ли способ, чтобы вставить каждый элемент по одному в каждом конкретном месте? Я видел несколько вопросов, касающихся базового элемента append для одного элемента с одним местоположением или двумя элементами, которые должны быть добавлены в ту же позицию, но не для добавления нескольких элементов в несколько местоположений в векторе.
Просто было принято решение, так как я забыл осветить цикл в вопросе имени. Однако векторизация должна быть быстрее в соответствии с множеством решений. – Barnaby