Переключение между значениями с rep () в R

Connor Gibbs спросил: 03 февраля 2018 в 11:06 в: r

Я ищу элегантный способ повторения двух значений в соответствии с заданным вектором чередующимся образом. Это лучше видно на примере. Возьмем следующий код, например:

vals_to_rep <- c(1, 2)
tms_to_rep <- c(5, 4, 15)
res <- c(rep(1, 5), rep(2, 4), rep(1, 15))
res

В этом примере я хочу повторить значения 1 и 2 в соответствии с вектором tms_to_rep, где я начну с 1 (если он первый в переменной) vals_to_rep, перед чередованием на 2, назад до 1, ...

Я хочу продолжить этот процесс для длины tms_to_rep - в этом случае три раза. Результат будет выглядеть так:

1 1 1 1 1 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Если это помогает, вы можете предположить, что vals_to_rep является двоичным, но никаких допущений по длине tms_to_rep.

Спасибо!

0 ответов