How to find the contigous coordinate points between two varaibles datasets and do regression

1 view (last 30 days)
Folks
I have two data variable sets of different sizes, A (chlorophyll) is 4317x3 matrix of lat, lon, and con. data value and B(SST) is 5851x3 matrix, of same lat, lon, and conc. data value. I want to find the coordinates in A data set that are closest to those B.
Then based on the index locations of those coordinates in the B matrix, extract out the concentration values from that correspond to those coordinates so that I can plot A and B concentration data sets value against one another.
The difficult part is to sort the coordinate locations in the A matrix with those in the B matrix, I would like to find the closest possible coordinate locations between the 2 large marice data sets.
please find the attached link for 2 datsets files
I have used this code
F = scatteredInterpolant(B(:,1), B(:,2), (1:size(B,1)).', 'nearest');
A_is_nearest_idx = F( A(:,1:2) )
B_closest_to_A = B(A_is_nearest_idx, :)
I find error
kindly help to sort the variables which was of continuous in order for synchronize and interpolate.

Accepted Answer

KSSV
KSSV on 23 Nov 2021
idx = knnsearch(A(:,1:2),B(:,1:2)) ;
B = B(idx,:) ;
  8 Comments
KSSV
KSSV on 23 Nov 2021
The attched data is time series or data at one time step? What data you have exactly? What regression you want? Spatial or temporal?
Karthik M
Karthik M on 23 Nov 2021
The attached chlor and SST is of extracted regional MODIS Aqua netcdf time series data
I need spatial regression for chlor concentration data in relationship to that of SST conc.

Sign in to comment.

More Answers (0)

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!