Mam wektor logiczny, dla którego chcę wstawić nowe elementy w poszczególnych indeksach. Wymyśliłem poniżej niezręczne rozwiązanie, ale czy jest jakiś lepszy sposób?Jak wstawiać elementy do wektora?
probes <- rep(TRUE, 15)
ind <- c(5, 10)
probes.2 <- logical(length(probes)+length(ind))
probes.ind <- ind + 1:length(ind)
probes.original <- (1:length(probes.2))[-probes.ind]
probes.2[probes.ind] <- FALSE
probes.2[probes.original] <- probes
print(probes)
daje
[1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
i
print(probes.2)
daje
[1] TRUE TRUE TRUE TRUE TRUE FALSE TRUE TRUE TRUE TRUE TRUE FALSE
[13] TRUE TRUE TRUE TRUE TRUE
Tak to działa, ale jest brzydki patrząc - jakieś sugestie?
Dlaczego trzeba wkładać? – hadley
długa historia, ale w zasadzie szukają serii PRAWDA, ale mają określone miejsca, w których chcę zerwać bieg. Pierwszy raz użyłem "rle", ale skalowałem bardzo słabo, więc wymyśliłem to brudne rozwiązanie wektorowe –