How to get the neighbors points within the specific radius in the rangesearch?

2 views (last 30 days)
Hi,
I found few articles discussed about the neighbors points within the specific radius using range search:
I tried with this simple code:
load fisheriris
rng(1); % For reproducibility
n = size(meas,1);
idx = randsample(n,3)
X = meas(~ismember(1:n,idx),3:4); % Training data
Y = meas(idx,3:4)
[idx, dist] = rangesearch(X,Y,1.5)
X(idx,:)
I got this such error:
Function 'subsindex' is not defined for values of class 'cell'.
So, means, i need to apply the cell function(maybe) to get the data points within 1.5 radius of Y.
Can anyone advice me on how to get the datapoints within 1.5 radius of Y?
I'm newbie in distance

Accepted Answer

Walter Roberson
Walter Roberson on 8 Mar 2018
cellfun(@(IDX) X(IDX,:), idx, 'uniform', 0)
Each original point has a cell of points that are within range because the number of points within range might be different for each one. So you have to process each cell separately.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!