[R] sammon fails with duplicates error, but no duplicates there (MASS package)

Frede Aakmann Tøgersen frtog at vestas.com
Fri Jul 4 10:02:30 CEST 2014


Hi

It seems to be related to the way that the default start values (y argument of sammon) are calculated.

Here the last two rows are the same:

> cmdscale(dist(data), 2)
           [,1]       [,2]
c1   2.04910556 -0.3627887
c2  -0.01889892 -0.1822057
c3   0.40767629  0.2599026
c4   0.81569304 -0.4165993
c5   0.70362596 -0.3573003
c6  -1.69673266 -1.7209956
c7  -0.65997449 -0.2888096
c8  -0.24449262  0.4502489
c9  -0.67800108  1.3092739
c10 -0.67800108  1.3092739

Try to perturb the start values using jitter(). Like this

> sammon(dist(data), y = jitter(cmdscale(dist(data), 2)))
Initial stress        : 0.18304
stress after  10 iters: 0.07867, magic = 0.092
stress after  20 iters: 0.05149, magic = 0.500
stress after  30 iters: 0.05101, magic = 0.500
stress after  40 iters: 0.05096, magic = 0.500
$points
           [,1]       [,2]
c1   2.12900041 -1.7255589
c2   0.32144017 -0.4397770
c3   1.09694083  1.2989299
c4   1.90228818  0.3198121
c5   0.09479179 -1.7229204
c6  -2.35619505 -1.2913663
c7  -0.95749355 -0.2635698
c8  -0.08310984  0.6903391
c9  -1.48236001  1.2443252
c10 -0.66530292  1.8897858

$stress
[1] 0.0509611

$call
sammon(d = dist(data), y = jitter(cmdscale(dist(data), 2)))

> 

Yours sincerely / Med venlig hilsen


Frede Aakmann Tøgersen
Specialist, M.Sc., Ph.D.
Plant Performance & Modeling

Technology & Service Solutions
T +45 9730 5135
M +45 2547 6050
frtog at vestas.com
http://www.vestas.com

Company reg. name: Vestas Wind Systems A/S
This e-mail is subject to our e-mail disclaimer statement.
Please refer to www.vestas.com/legal/notice
If you have received this e-mail in error please contact the sender. 

> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
> On Behalf Of Martin Guetlein
> Sent: 4. juli 2014 09:13
> To: r-help at r-project.org
> Subject: [R] sammon fails with duplicates error, but no duplicates there
> (MASS package)
> 
> Hi all,
> 
> the sammon mapping fails with message "initial configuration has
> duplicates". But there are no duplicates in my data (see example
> below).
> Apparently, the problem is that row 9 and 10 have an equal distance to
> all other rows (but they are not equal, see last two columns).
> 
> Any help to get sammon working would be great,
> Kind regards,
> Martin
> 
> 
> library("MASS")
> c1 <- c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0)
> c2 <- c(0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0)
> c3 <- c(1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0)
> c4 <- c(0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0)
> c5 <- c(1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0,
> 0, 0, 0, 0, 0)
> c6 <- c(0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1,
> 1, 1, 1, 0, 0)
> c7 <- c(0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0,
> 0, 0, 0, 0, 0)
> c8 <- c(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0)
> c9 <- c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 1, 0)
> c10<- c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 1)
> # working
> data <- rbind(c1,c2,c3,c4,c5,c6,c7,c8,c9)
> sammon(dist(data))
> # not working:
> data <- rbind(c1,c2,c3,c4,c5,c6,c7,c8,c9,c10)
> sammon(dist(data))
> 
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-
> guide.html
> and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list