2012-11-06 256 views
-5

我在计算两个不同矩阵之间的距离时遇到了问题。第一个矩阵是5000x6,第二个矩阵是5x80Matlab计算距离

我想用这个语法来计算距离:

pdist2(mCe(1,:),row); 

但是,这给了我一个错误说“在x列必须在同一Ÿ”。

当矩阵有不同数量的列时,有计算距离的方法吗?

+4

对不起,什么?你问的是这样的:“地球和广场之间的距离是多少?” –

+2

你认为'[1 2 3 4]'和'[-5 6]'之间的距离是什么?它没有数学上的定义,所以你必须更清楚一点......你希望从计算中得到什么? –

回答

4

pdist2函数根据度量计算一组点之间的距离。度量是来自相同度量空间的2个向量参数的函数,因此它们需要具有相同的维度。根据指标的定义,您想要做的事情是不可能的。阅读此链接了解更多详情

http://en.wikipedia.org/wiki/Metric_space

+0

简单的朋友 我想计算两个数据集之间的距离第一个数据集包含6个超过5000行的culomns,但其他数据集包含像106个culomns样本实数 – AbuNada

+0

简单的朋友 我想要计算距离在两个数据集之间的第一个数据集包含6列与超过5000行,但另一个数据集包含像样本实数的106列是它的位置以找到这些数据集之间的距离,顺便说一句我想罚款距离分类数据无论是正常还是攻击。 – AbuNada

+0

这里是一个例子,如果任何人能理解,请给我解释一下 clc 清除全部 加载mC; %(a)执行 load('X.txt'); NZ1 = nonzeros(mC(1,:)); count1 = size(NZ1,1);对于i = 1:count1 ab1(i,:)= M(NZ1(i),:); 结束 ab1; %%%%%%%%%%%%%%%%%%%%%% w = X; l = w(:,1:end-1); D1 = dist(l,ab1'); [row1,col1] = size(D1);对于i = 1:行1 min_value(i)= 2;如果D1(i,j) AbuNada