finding equal (lon,lat) in another matrix of different size
Ältere Kommentare anzeigen
I have 2 matrices:
A = lon, lat, pressure, temperature
B = lon, lat, depth
A size is bigger than B
I am trying to merge the data from A, B to obtain: (lon, lat, pressure, depth, Temperature)
My logic is:
- Identify values in which latA=latB AND lonA,lonB
- export both columns : lon, lat
- add pressure, depth and temperature values to the final matrix
The problem I face is that I want to
treat (lon, lat) as a one single column so that values do not split(?) like a row
and giving the different size in the two matrices, I want to tell matlab to compare one element (Alat1) with all the elements in B-lat column
I found I could use something like this:
lonMatch = ismember(A(:,1), B(:,1));
latMatch = ismember(A(:,2), B(:,2));
latlonMatch = lonMatch & latMatch; %of course the these 3 lines can be put into 1
Final matrix = A(latlonMatch, 3:end);
I am new to this kind of problem and I do not know how to approach it :(
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu Oceanography and Hydrology finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!