find a row with all elements satisfying a condition
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have a matrix that looks something like this:
mat = [20, 3; 43 0; 8 3; 100 3; 3 9];
I want to find the rows of the matrix that all of its elements are satisfying a certain condition. For example, if the condition is:
> 10
The result matrix will be:
[8 3; 3 9];
Because those are the only rows in the matrix that both of their elements are smaller then 10. Is there an easy way to achieve this result? Thanks!
0 Commenti
Risposte (1)
Aakash Mehta
il 24 Giu 2020
Modificato: Aakash Mehta
il 24 Giu 2020
mat = [20, 3; 43 0; 8 3; 100 3; 3 9];
You can use the below code to get rows which satisy the condition.
size1 = size(mat);
vec = zeros(size1(1),1);
for i = 1:size1(1)
vec(i) = all(mat(i,:)<10);
end
extract those rows in the resultant matrix.
result = mat(vec==1, :);
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements 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!