# how can I find the elements in the matrix that meet my conditions and then form the matrix within these conditions?

1 view (last 30 days)

Show older comments

##### 3 Comments

Guillaume
on 25 Sep 2018

Ok, but you need to explain better what limit the matrix actually mean.

It could mean that you want to keep columns 87 to 222, i.e any column that has values in the closed interval [24, 46] (or is it half-closed interval [24, 47) ?)

It could mean the same, but for the edge columns, any value out of the interval is replaced by NaN.

It could be that you want to keep columns whose median or mean is within your interval.

Something else altogether?

### Accepted Answer

Stephan
on 25 Sep 2018

Edited: Stephan
on 25 Sep 2018

Hi,

here is an example:

% Make a random Matrix with 50x3 random integers between 1...100

A = randi(100,50,3);

% Use only the rows of A for B, where in column 1 of A the values are between 28 and 46

B = A(A(:,1)>=28 & A(:,1)<=46,:)

EDIT:

For your case this should work:

keep_col = sum(lat >= 28 & lat <= 46) >= 1;

lat2 = lat(:,keep_col);

You get a 20x136 Matrix lat2 which meets the condtions and all NaN values are kept.

Best regards

Stephan

### More Answers (0)

### See Also

### Community Treasure Hunt

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

Start Hunting!