我在计算一对物体之间的马哈拉诺比斯距离时遇到了一些麻烦。我按照MATLAB的文档,为了计算Mahalanobis距离,我必须使用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行) 马哈拉诺比斯度量的协方差矩阵必须 是一个具有相同列数的方阵 X.它必须是对称的和肯定的。
:
A1=[75 87 90]; A2=[99 88 100];
D = mahal(A1,A2)
我明白了:
使用mahal时出错(第38行) X的行数必须超过数量 列。
转置A1,A2我得到一个3x1矩阵,但我很确定我的价值必须是一维的。任何帮助都将受到高度赞赏。
答案 0 :(得分:0)
对于一对对象,可以做的是首先将X矩阵标准化为0均值和1方差尺度,然后应用欧几里得距离