#r
#r
Вопрос:
Я хочу создать последовательность чисел, подобную этой:
X=22 1
Y=x 2
Z=x 3
A=x 4
B=X 5
1,2,X,3,4,Y,5,6,Z,7,8,A,10,11,B #and so on...
1,2,23,3,4,25,5,6,26,7,8,27,10,11,28 #and so on...
Как это сделать с помощью R? для этого есть функция?
Комментарии:
1. я отредактировал сообщение
2. я намереваюсь создать не обычную последовательность, например 1,2,3,4,5, а последовательность, которая вставляет число в последовательность 1,2,3,4,5, например 1,2,8,3,4,9,5.
3. Я создал пример с решением. Пожалуйста, проверьте, помогает ли это
Ответ №1:
Мы можем сделать
unlist(Map(c, split(v1, as.integer(gl(length(v1), 2,
length(v1)))), c(X, Y, Z, A, B)), use.names = FALSE)
#[1] 1 2 23 3 4 25 5 6 26 7 8 27 9 10 28
данные
v1 <- 1:10
X <- 23
Y <- X 2
Z <- X 3
A <- X 4
B <- X 5
Ответ №2:
Вы можете создать дублирующуюся запись в определенной позиции и заменить их другой последовательностью.
seq1 <- 1:10
seq2 <- c(23, 25:28)
seq3 <- sort(c(seq1, seq(2, 10, 2)))
seq3[duplicated(seq3)] <- seq2
seq3
#[1] 1 2 23 3 4 25 5 6 26 7 8 27 9 10 28