我在计算一对物体之间的马氏距离时遇到了一些麻烦。我遵循了 MATLAB 的文档,为了计算马氏距离,我必须使用 pdist2:“D = pdist2(X,Y,'mahalanobis',C)"
A1=[75 87 90]; A2=[99 88 100];
C = nancov(A1,A2);
D = pdist2(A1,A2,'mahalanobis',C)
这给了我错误:
使用 pdist2 时出错(第 282 行) Mahalanobis 度量的协方差矩阵必须是列数与 X 相同的方阵。并且它必须是对称且正定的。
另一方面,如果我尝试:
A1=[75 87 90]; A2=[99 88 100];
D = mahal(A1,A2)
我得到:
使用 mahal 时出错(第 38 行) X 的行数必须超过列数。
转置 A1,A2 我得到一个 3x1 矩阵,但我很确定我的值必须是一维的。任何帮助将不胜感激。