MATLAB: How to apply the nearest neighbor using rangesearch function for different range/scale of X and Y data

distanceknnmachine learningnearest neighborsrangesearch

Hi, I would like to find the nearest neighbors data using the rangesearch function specifically euclidean distance for the data that has different range/ scale data in X and Y.
For instance, the range for X is between 1.5 and 5.5, while Y has range between 40 and 100.
This is my data:
fData = [ 3.6 79; 1.8 54; 3.333 74 ;2.283 62; 4.533 85; 2.883 55; 4.7 88 ;3.6 85 ;1.95 51 ;4.35 85 ;1.833 54; 3.917 84; 4.2 78; 1.75 47; 4.7 83; 2.167 52; 1.75 62; 4.8 84; 1.6 52; 4.25 79; 1.8 51; 1.75 47; 3.45 78; 3.067 69; 4.533 74; 3.6 83; 1.967 55; 4.083 76; 3.85 78; 4.433 79; 4.3 73; 4.467 77; 3.367 66; 4.033 80; 3.833 74; 2.017 52; 1.867 48; 4.833 80; 1.833 59; 4.783 90 ]
If i apply the max/min or zscore normalization funcion and apply the normalized data in the rangesearch function, how i'm going to get back my original data and plot in a graph I would appreciate if anyone can give some ideas
If i do not concern about the range, i will get inaccurate nearest data points.

Best Answer

rangesearch returns indices. You can use them to index the original data.