Clear Filters
Clear Filters

How to search through a matrix.

9 views (last 30 days)
Brandon Bush
Brandon Bush on 25 Jun 2018
Commented: Brandon Bush on 25 Jun 2018
Hello, I have two matrices. One is a 388 x 4 called data and the other is a 31 x 3 called num. Both matrices have column 1 being Latitude values, column two being Longitude values and column 3 being Rainfall values. I need to search through column 1 & 2 of the data matrix to find the Lat & Lon values corresponding to those in the num matrix, then take the value in the 3rd column(Rainfall) of the data matrix that aligns with the Lat/Lon coordinates and stick it into a new array that is 31 x 1 (to match with the size of the rainfall column in the num matrix).
  1 Comment
Brandon Bush
Brandon Bush on 25 Jun 2018
I found a function called intersect(A,B). i believe this will help to find matching values but I am not sure where to go from there.

Sign in to comment.

Accepted Answer

Matt J
Matt J on 25 Jun 2018
Edited: Matt J on 25 Jun 2018
Only 31 look-ups? For things like that, for-loops are fine:
newarray=nan(31,1);
for i=1:31
j=find( data(:,1)==num(i,1) & data(2,:)==num(i,2) );
if ~isempty(j)
newarray(i)=data(j,3);
end
end

More Answers (0)

Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!