#matlab #numbers #repeat
Вопрос:
Я пробовал различные повторяющиеся функции, которые сообщают мне частоту чисел, но я хочу знать порядок повторяющихся чисел. Например, у меня есть массив, в котором есть числа
a=[ 1,1,1,1,1,2,2,2,2,2,1,1,1,1,4,4,4,5,5,5,7,7,2,2,2,2]
Я хочу, чтобы моя функция дала мне ответ, т. е. 1,2,1,4,5,7,2.
Ответ №1:
Вы можете использовать diff
, вас интересует первый элемент a
, а затем каждый последующий индекс, где разница между элементами ненулевая
gt;gt; a = [ 1,1,1,1,1,2,2,2,2,2,1,1,1,1,4,4,4,5,5,5,7,7,2,2,2,2]; gt;gt; b = a( [true, diff(a)~=0] ); b = 1 2 1 4 5 7 2
Комментарии:
1. Спасибо Вулфи за ответ.. Это сработало 🙂