If same value apperas in array count +1

Hello Guys,
I have an array with nx1, now i need a code to count + 1 if the same value apperas later in the array, for example:
input = [ 1 2 3 4 1 2 3 4 1 2 3 4 ];
output = [ 1 1 1 1 2 2 2 2 3 3 3 3];
Thank you

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 14 Sep. 2021

1 Stimme

input = [ 1 2 3 4 1 2 3 4 1 2 3 4 ];
output = sum(triu(input' == input))
output = 1×12
1 1 1 1 2 2 2 2 3 3 3 3

Weitere Antworten (1)

KSSV
KSSV am 14 Sep. 2021

1 Stimme

input = [ 1 2 3 4 1 2 3 4 1 2 3 4 ];
a = reshape(input,[],3)' ;
[c,ia,ib] = unique(a,'rows') ;
ib

1 Kommentar

First Last
First Last am 14 Sep. 2021
Thank you KSSV,
but i the output is a little bit diffrent

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by