Finding closest distance between two data set for each point
古いコメントを表示
Hi,
I have two data set. Each of them have 300, 3D (x,y,z) data .
Assume;
first data set =m
second data set=n
Every point in "m" corresponds to 1 point in "n" which have to be the closest one.
I need to find the closest "n" to "m" and calculate the distance between them and i need to do it for all 300 data
I am new with matlab. I think i should use pdist2 but i could not find how.
Thank you...
採用された回答
その他の回答 (1 件)
Mehmet Volkan Ozdogan
2019 年 3 月 29 日
0 投票
2 件のコメント
Walter Roberson
2019 年 3 月 29 日
編集済み: Walter Roberson
2019 年 3 月 29 日
Assuming that C1 and C2 have 3 columns, giving X Y Z coordinates
d = pdist2(C1, C2);
[mindist, idx] = min(d, [], 2);
for K = 1 : length(idx)
fprintf('C1(%d,:)@(%f,%f,%f) <-> C2(%d,:)@(%f,%f,%f) is distance %f\n', K, C1(K,:), idx(K), C2(idx(K),:), mindist(K));
end
Mehmet Volkan Ozdogan
2019 年 3 月 29 日
カテゴリ
ヘルプ センター および File Exchange で Axis Labels についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!