R - Как создать восходящую / нисходящую числовую линию вокруг указанного элемента c в векторе - PullRequest
1 голос
/ 28 мая 2020
• 1000 с центром в местоположении 0 для длины каждого вектора ?:
-5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11

Большое спасибо за любые рекомендации.

Ответы [ 3 ]

5 голосов
/ 28 мая 2020

Вы можете использовать:

x <- c(NA, NA, NA, NA, NA, 0 ,NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA)
seq_along(x) - which(x == 0)
#[1] -5 -4 -3 -2 -1  0  1  2  3  4  5  6  7  8  9 10 11
1 голос
/ 28 мая 2020

другое решение

seq(- which(x == 0) + 1, length.out = length(x))
0 голосов
/ 28 мая 2020

Другой вариант

seq(length(x)) - which(!x)

Или с which.max

seq_along(x) - which.max(x)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...