how to look for repetions in a matrix with condition on the last column
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have a matrix A like this:
[0 1 0 2 1 ;
0 1 1 2 0 ;
0 0 1 2 1 ]
I would like to obtain a vector filled with the column position where there is a same number for a certain condition on the last column...in other words: look in the A(1:4, columns where A(:,5)==1) which correspond to
A(1,1:4) = [0 1 0 2] and
A(3,1:4) = [0 0 1 2]
and find the position where there is the same number; save in a vector 1 and 4. thanks!
0 Commenti
Risposta accettata
KL
il 26 Feb 2018
You just need to use indexing with find to get the indices of the rows that fullfil your condition,
A = [0 1 0 2 1 ;
0 1 1 2 0 ;
0 0 1 2 1 ];
ind = find(A(:,end)==1);
res = A(ind,1:end-1)
here ind has the row numbers of the matrix A that satisfy your condition and res extract the needed elements from the respective rows.
ind =
1
3
res =
0 1 0 2
0 0 1 2
1 Commento
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!