Select from 2D Array by 2 criteria - Matlab
이전 댓글 표시
I have a 15 * 2 array where the first column represents the area and the second column represents the corresponding circularity to the 15 objects. I need to select the row with maximum area while applying the following condition for the circularity to be > 0.9 and <= 1.2
Example:
- Area Circularity
- ----- -----------
- 22041 1,1703
- 23458 2,8425
- 155 1,4165
- 37 2,1089
- 215 1,5692
- 41 1,0549
- 659 1,7144
- 64 1,0508
- 3 0,3092
- 584 1,2543
- 26 1,1132
- 396 2,9046
- 1 0
- 3 0,8488
- 4 0,4638
- Expected Result:
- 22041 1,1703
채택된 답변
추가 답변 (1개)
filteredarray = yourarray(yourarray(:, 2) > 0.9 & yourarray(:, 2) <= 1.2, :); %filter unwanted rows
[~, maxrow] = max(filteredarray(:, 1)); %find location of max in what's left over
result = filteredarray(maxrow, :) %get the row at location
카테고리
도움말 센터 및 File Exchange에서 Matrices and Arrays에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!