主要内容

mdscale.

非分类多维缩放

语法

Y = mdscale (D, p)
[Y,压力]= mdscale (D, p)
[y,应力,差异] = mdscale(d,p)
[...] = mdscale(d,p,'的名字',价值

描述

Y = mdscale (D, p)对象上执行非度量多维缩放n-经过-n不相似的矩阵D和回报Y,一种构型n点(行)p维度(列)。点之间的欧几里得距离Y中对应异同点的单调变换的近似D.默认情况下,mdscale.使用Kruskal的归一化应力准则。

您可以指定D作为一个完整的n-经过-n矩阵,或以上三角形形式,例如输出pdist.完全不同的矩阵必须是真实的和对称的,并且沿着其他地方的对角线和非负元素具有零。上三角形形式的异化矩阵必须具有真实的非负条目。mdscale.对待in.D表示缺少值,并忽略这些元素。INF.不接受。

您也可以指定D作为一个完整的相似矩阵,沿着对角线和所有其他元素都小于1。mdscale.将相似性矩阵转换为不相似性矩阵,这样返回的点之间的距离Y近似SQRT(1-D).要使用不同的转换,请在调用之前转换相似点mdscale.

[Y,压力]= mdscale (D, p)返回最小化的应力,即,压力评估Y

[y,应力,差异] = mdscale(d,p)返回差异,即差异的单调变换D

[...] = mdscale(d,p,'的名字',价值指定控制进一步详细信息的一个或多个可选参数名称/值对mdscale..指定的名字单引号。可用参数是

  • 标准- 拟合良好标准,以最小化。这也决定了缩放的类型,非度量标准或度量标准mdscale.执行。非度量缩放的选择有:

    • '压力'-由点间距离平方和标准化的应力,也称为应力1。这是默认值。

    • “sstress”-应力的平方,与点间距离的四次方和标准化。

    公制缩放的选择有:

    • 'Metricstress'-应力,用不同之处的平方和标准化。

    • “metricsstress”- 平方压力,与不一致的第4个力量的总和进行标准化。

    • “马斯”- Sammon的非线性映射标准。偏离对角线相异化必须严格肯定。

    • “应变”-与经典多维标度等效的标准。

  • 权重大小相同的矩阵或向量D,含有非负不相似权重。您可以使用这些来重量相应元素的贡献D在计算和最小化压力方面。的元素D对应的零权值被有效地忽略了。

    请注意

    当您将权值指定为一个完整的矩阵时,它的对角元素将被忽略并且没有效果,因为对应的对角元素D不参与应力计算。

  • 开始-用于选择y点的初始配置的方法

    • 'cmdscale'-使用经典的多维尺度解决方案。这是默认值。'cmdscale'当权重为零时无效。

    • “随机”- 从适当缩放的P维正常分布中选择随机选择具有不相关坐标的位置。

    • 一个n-经过-p初始位置矩阵,其中n为矩阵的大小Dp是输出矩阵的列数Y.在这种情况下,您可以通过[]pmdscale.推断p从矩阵的第二个维度。还可以提供一个3-D数组,表示for的值“复制”从数组的第三维。

  • 复制-重复缩放的次数,每次都有一个新的初始配置。默认值是1

  • 选项- 用于最小化拟合标准的迭代算法的选项。传入由此创建的选项结构实例化.例如,

    选择= statset (param1val1param2.val2,......);[...] = mdscale(...,'选项',选择)

    选择的选择实例化参数是

    • '展示'- 显示输出级别。选择是'离开'(默认),“通路”, 和'最终的'

    • 'maxiter'—允许的最大迭代次数。默认值是200.

    • “TolFun”-应力准则及其梯度的终止公差。默认值是1的军医

    • “TolX”- 配置位置步长的终止公差。默认值是1的军医

例子

负载麦片。卡路里,蛋白质,脂肪,钠,纤维…碳水化合物糖货架钾维生素];从单个制造商中选取一个子集。X = X (strcmp(“K”,cellstr(有限公司)),:);%创建一个不同的矩阵。不同= pdist (X);使用非度量缩放在2D中重新创建数据,并制作结果的Shepard图。[Y、压力差异]= mdscale (, 2);距离= pdist (Y); [dum,ord] = sortrows([disparities(:) dissimilarities(:)]); plot(dissimilarities,distances,'bo', ... dissimilarities(ord),disparities(ord),'r.-'); xlabel('Dissimilarities'); ylabel('Distances/Disparities') legend({'Distances' 'Disparities'},'Location','NW');

对相同的差异进行公制缩放。figure [Y,stress] =…差异mdscale(2 '标准',' metricsstress ');距离= pdist (Y);情节(不同的距离,“bo”,…[0马克斯(异同)],[0 max(异同)],' r . - ');包含(“相异”);ylabel(距离)

另请参阅

||

在R2006A之前介绍