smacofSym的难度 - 多维缩放

时间:2014-04-18 23:36:45

标签: r multi-dimensional-scaling

我对Smacof包中的smacofSym函数有疑问。我正在使用R版本3.1.0到RStudio版本0.98.501。

我使用以下命令:

MDSdata <- smacofSym(DJaccardMatrix, ndim=2, metric=FALSE, verbose=TRUE).

我已经在下面列出了我正在使用的数据(DJaccardMatrix)的详细信息。每次我运行smacofSym时,我最终会得到一个配置,其中最终配置是相互重叠的。以下是结果示例:

MDSdata$conf
         D1          D2
1    0.06259624 -0.01494732
2    0.06276541 -0.01480409
3    0.06266933 -0.01492375
4    0.06262438 -0.01496111
5    0.06243336 -0.01496193
6    0.06258047 -0.01502270
7    0.06247747 -0.01500037 .......

为了检查结果,我在XLStat上运行了相同的矩阵并得到了我所期望的,一组更加分散的点。在查看了一些其他帮助请求后,我尝试将smacofSym作为矩阵和dist运行,但都没有影响结果。

以下是关于DJaccardMatrix作为矩阵的信息:

num [1:121, 1:121] 0 0.969 0.679 0.704 0.939 ...
attr(*, "dimnames")=List of 2 
..$ : chr [1:121] "1" "2" "3" "4" ...
..$ : chr [1:121] "1" "2" "3" "4" ...

这是我在DJaccardMatrix上作为dist对象的信息:

Class 'dist'  atomic [1:7260] 0.969 0.679 0.704 0.939 0.8 ...
  ..- attr(*, "Size")= int 121
  ..- attr(*, "call")= language as.dist.default(m = dissmat)
  ..- attr(*, "Diag")= logi FALSE
  ..- attr(*, "Upper")= logi FALSE

我很感谢人们提出的任何建议。我认为它是非常基本的东西,但我绝对没有找到它。 (在旁注 - 随意忽略这一点,因为它与解释有关 - 什么是smacof报告的非测量压力与Kruskal的压力之间的关系?有没有?)

1 个答案:

答案 0 :(得分:0)

这个答案在最后的括号中涉及你的一面问题:“smacof报告的非测量压力与Kruskal压力之间的关系是什么”

Kruskal的压力(或压力-1)是stress.nm报告的非度量压力(smacof)的平方根。

因此,如果您通过运行mod获得了名为smacofSym的模型:

Stress-1 = mod$stress.nm^.5