Find distance between vectors given in a cell array

조회 수: 2 (최근 30일)
That Guy
That Guy 2020년 11월 12일
답변: Sai Veeramachaneni 2020년 11월 16일
say i have a cell array in the form p = {[x1, y1], [x2, y2],...,[xn, yn]}
i want to find the number of points that arent within r distance of eachother. I know that pdist will find the distance between points but im not sure how to break this cell array up in order to apply this function. Any help?

답변 (1개)

Sai Veeramachaneni
Sai Veeramachaneni 2020년 11월 16일
Below are the few steps which may help you.
  1. Since pdist() accepts matrix as an argument, you should convert cell array to matrix using cell2mat function
  2. Find pair wise distances using pdist() function
  3. Count number of distances greater than r distance.
Example-
p={[1,2],[3,4],[5,6],[7,8]};
matrixP=cell2mat(p(:));
distance = pdist(matrixP);
sum(distance>3)

카테고리

Help CenterFile Exchange에서 Statistics and Machine Learning Toolbox에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by