Я имею выглядя данные, как следующее:Экстрагирования чередование из вектора R
A= c(0,0,0,-1,0,0,0,1,1,1,0,0,-1,0,0,-1,-1,1,1,1,-1,0,0,0,-1,0,0,-1,-1,1,1,0,0,0,0,1,-1)
Цель состоит в том, чтобы извлечь чередующиеся -1S и 1s. Я хочу создать функцию, в которой входной вектор содержит 0,1 и -1. Выход идеально выделяет все 0s и чередует -1s и 1s.
Например, требуемый выход для приведенного выше примера:
B= c(0,0,0,-1,0,0,0,1,0,0,0,0,-1,0,0,0,0,1,0,0,-1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,-1)
Два 1s в 9-м и 10-м месте в А оказалось равным 0, потому что мы только сохранить первое 1 или -1 появляться. По этой причине -1s в 16-м и 17-м местоположениях A также поворачиваются на 0.
У кого-нибудь есть хорошая идея для создания такой функции?
Почему этот вопрос обсуждается и vtc? Это хорошо объяснено на примере. –
Я не уверен. – jay2020
Нечетным значением, которое мне кажется, является позиция 16. Он переключается с «0» в позиции 15 на «-1», но удаляется. Зачем? –