MATLAB: Find elements in vector that satisfy condition

MATLABmatrix

say that I have the following matrix X:
x1 =[1 2]
x2 = [3 2]
x3 = [3 4]
X = [x1;x2;x3]
I need to get a matrix consisting of the rows in X that that satisfy the following condition:
x(1) == 3.
So my resulting matrix will be:
S = [x2;x3] = [3 2; 3 4]
How can I do this (for any dimension index, not necessarily 1)
Thank you

Best Answer

X = your big matrix
k = column number you want to examine
value = some number you are looking for
idx = (X(:,k) == value); % logical indexes of the rows where the element in column k is value
S = X(idx,:); % pick off the subset of rows that have value in column k