pdist2 output is larger than expected

1 回表示 (過去 30 日間)
Pelajar UM
Pelajar UM 2021 年 11 月 15 日
コメント済み: Pelajar UM 2021 年 11 月 15 日
X= pdist2 (A,B, "chebychev")
A and B both are 3000x3 arrays (x,y,z data).
Why is X a 3000x3000 array rather than a 3000x1 array?
This seems to give the right answer though... why?
Z =diag(pdist2 (A,B, "chebychev"));

採用された回答

Dave B
Dave B 2021 年 11 月 15 日
pdist2 is providing all the pairwise distances. It compares row 1 of A with row 1 of B (Z(1,1)), then row 1 of A with row 2 of B (Z(1,2) and Z(2,1)), etc. Along the diagonal are the matching row cases.
  3 件のコメント
Dave B
Dave B 2021 年 11 月 15 日
編集済み: Dave B 2021 年 11 月 15 日
Chebyshev distance is the maximum distance across dimensions, right?
a=rand(10);
b=rand(10);
cheby_pdist2=diag(pdist2(a,b,'chebychev'))
cheby_pdist2 = 10×1
0.8386 0.6272 0.8585 0.6400 0.4895 0.8044 0.6681 0.7439 0.8985 0.7146
cheby_daveb=max(abs(a-b),[],2)
cheby_daveb = 10×1
0.8386 0.6272 0.8585 0.6400 0.4895 0.8044 0.6681 0.7439 0.8985 0.7146
Pelajar UM
Pelajar UM 2021 年 11 月 15 日
Right. Thank you so much.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrices and Arrays についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by