Существует ли какой-либо альтернативный метод R для решения проблемы, описанной здесь: Как вставлять элементы в вектор через равные промежутки времени в Matlab
А именно, из вектора x <- c(1,2,3,4,5,6,7,8,9,10,11,12)
, I хочу получить вектор y
, заданный
y <- c(0, 1, 2, 3,
0, 4, 5, 6,
0, 7, 8, 9,
0,10,11,12)
... Я нашел следующую страницу, ... возможно, дубликат
R: вставить элементы в вектор (a вариация)
Редактировать Я слегка изменил ответ @ jay.sf. Я думаю, что interval.length
- это не длина нашего интуитивного интервала.
x <- 1:16
interval.length <- 2
co_interval.length <- length(x)/interval.length
as.vector(t(cbind(0, matrix(x, co_interval.length, byrow=T))))
[1] 0 1 2 0 3 4 0 5 6 0 7 8 0 9 10 0 11 12 0 13 14 0 15 16