Alternar, entrelaçar ou entrelaçar dois vetores

Eu quero entrelaçar dois vetores do mesmo modo e igual comprimento. Dizer:

a <- rpois(lambda=3,n=5e5)
b <- rpois(lambda=4,n=5e5)

Eu gostaria de entrelaçar ou entrelaçar esses dois vetores, para criar um vetor que seria equivalentec(a[1],b[1],a[2],b[2],...,a[length(a)],b[length(b)])

Minha primeira tentativa foi essa:

sapply(X=rep.int(c(3,4),times=5e5),FUN=rpois,n=1)

mas requerrpois para ser chamado muito mais vezes do que o necessário.

Minha melhor tentativa até agora foi transformá-lo em uma matriz e reconvertê-lo em um vetor:

d <- c(rbind(rpois(lambda=3,n=5e5),rpois(lambda=4,n=5e5)))
d <- c(rbind(a,b))

Existe uma maneira melhor de fazer isso? Ou existe uma função na baseR que realiza a mesma coisa?

questionAnswers(2)

yourAnswerToTheQuestion