pivot_mds {bigmds} | R Documentation |

## Pivot MDS

### Description

Pivot MDS, introduced in the literature of graph layout algorithms, is similar to
Landmark MDS (`landmark_mds()`

) but it uses the distance information between landmark and non-landmark
points to improve the initial low dimensional configuration,
as more relations than just those between landmark points are taken into account.

### Usage

```
pivot_mds(x, num_pivots, r)
```

### Arguments

`x` |
A matrix with |

`num_pivots` |
Number of pivot points to obtain an initial MDS configuration. It is
equivalent to |

`r` |
Number of principal coordinates to be extracted. |

### Value

Returns a list containing the following elements:

- points
A matrix that consists of

`n`

individuals (rows) and`r`

variables (columns) corresponding to the principal coordinates. Since we are performing a dimensionality reduction,`r`

`<<k`

- eigen
The first

`r`

largest eigenvalues:`\lambda_i, i \in \{1, \dots, r\}`

, where each`\lambda_i`

is obtained from applying classical MDS to the first data subset.

### References

Delicado P. and C. Pachón-García (2021). *Multidimensional Scaling for Big Data*.
https://arxiv.org/abs/2007.11919.

Brandes U. and C. Pich (2007). *Eigensolver Methods for Progressive Multidimensional Scaling of Large Data*. Graph Drawing.

Borg, I. and P. Groenen (2005). *Modern Multidimensional Scaling: Theory and Applications*. Springer.

Gower JC. (1968). *Adding a point to vector diagrams in multivariate analysis*. Biometrika.

### Examples

```
set.seed(42)
x <- matrix(data = rnorm(4 * 10000), nrow = 10000) %*% diag(c(9, 4, 1, 1))
mds <- pivot_mds(x = x, num_pivots = 200, r = 2)
head(mds$points)
mds$eigen
```

*bigmds*version 3.0.0 Index]