# How do I select the minimum value from the first column based on the corresponding value in the second column?

7 views (last 30 days)
Bhavishey Thapar on 17 Feb 2022
Commented: Bhavishey Thapar on 17 Feb 2022
I have data in two columns as shown below.
I want to find the minimum value in column one but the minimum function should only consider values in the 1st column, whose corresponding value in the 2nd column is a 0.
So in the above 8 rows the minimum value would be 3 since the minimum function would only look at 3,5,7,76.
How can achieve this?

KSSV on 17 Feb 2022
A = [1 1; 22 1; 3 0 ; 5 0; 60 1; 76 0; 7 0; 12 0] ;
iwant = min(A(A(:,2)==0,1))
iwant = 3
Bhavishey Thapar on 17 Feb 2022
This works. Thank you!

Sajid Afaque on 17 Feb 2022
Edited: Sajid Afaque on 17 Feb 2022
use the below workaround
%variable
var = [[1;22;3;5;60;76;7;12] [1;1;0;0;1;0;0;1]];
%select only the portion which has second column entries as zeroes
var1 = var(find(var(:,2) == 0),:);
%now apply the min function
min_value = min(var1(:,1));
same in one line
%
min_value = min(var(find(var(:,2) == 0),1))
Bhavishey Thapar on 17 Feb 2022
Thank you. This works.

### Categories

Find more on Large Files and Big Data in Help Center and File Exchange

R2021b

### Community Treasure Hunt

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

Start Hunting!