Peter Kleiweg <kleiweg@let.rug.nl> writes:
If tbl is an object of class 'dist', you can do this:
a <- sammon(tbl, k=3)
But you can't do this:
b <- isoMDS(tbl, k=3)
Wouldn't it be sensible to have identical interfaces to sammon()
and isoMDS() ?
I think all that would be needed is to change this:
isoMDS <- function(d, y=cmdscale(d, 2), maxit=50, trace=TRUE)
{
...into this:
isoMDS <- function(d, y, k=2, maxit=50, trace=TRUE)
{
if(missing(y)) y <- cmdscale(d, k=k)
Actually, it should work if you simply define the arguments as
isoMDS <- function(d, y=cmdscale(d, k), k=2, maxit=50, trace=TRUE)
Default arguments can refer to each other and even to items calculated
inside the function.