Finding rows/indices by comparing individual elements of rows of one matrix to another
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Let's say I have a
matrix and a
matrix as follows:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/304907/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/304911/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/304915/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/304919/image.png)
I want to find the indices of rows in
such that the row elements are less than the row elements of
: e.g., in the third row, 1<2 and -2<1. I can do this by the following code:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/304923/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/304927/image.png)
[row,col] = find(m1(:,1)<=m2(1,1) & m1(:,2)<=m2(1,2));
The code therefore identifies row 3 and row 4 from
.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/304931/image.png)
My question is: if I had more columns, how could I implement the same action but without using "&" everytime to define the conditions for each column as I did in my code? I am basically asking for a generalized version of what I have done.
I hope I was clear with my question. Thanks in advance!
0 Commenti
Risposta accettata
Tommy
il 29 Mag 2020
For less than or equal to:
find(all(m1 <= m2, 2))
For less than:
find(all(m1 < m2, 2))
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Logical 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!