The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
MDS is a statistic tool for reduction of dimensionality, using as input a distance matrix of dimensions n × n. When n is large, classical algorithms suffer from computational problems and MDS configuration can not be obtained. With this package, we address these problems by means of six algorithms, being two of them original proposals:
To obtain more information, please read this paper.
You can install the development version of bigmds from GitHub with:
This is a basic example which shows you how to solve a common problem:
library(bigmds)
x <- matrix(data = rnorm(4 * 10000), nrow = 10000) %*% diag(c(9, 4, 1, 1))
landmark_mds_conf <- landmark_mds(x = x, num_landmarks = 200, r = 2)
head(landmark_mds_conf$points)
#> [,1] [,2]
#> [1,] -5.365249 0.7337736
#> [2,] 3.306016 -4.5927014
#> [3,] -7.294365 8.3014463
#> [4,] 15.699140 4.6770914
#> [5,] 14.089091 8.1901709
#> [6,] 9.108796 2.6281555
landmark_mds_conf$eigen
#> [1] 93.04856 16.24862
interpolation_mds_conf <- interpolation_mds(x = x, l = 200, r = 2, n_cores = 1)
head(interpolation_mds_conf$points)
#> [,1] [,2]
#> [1,] 5.318333 0.7392544
#> [2,] -3.298290 -4.5693209
#> [3,] 7.265958 8.2536291
#> [4,] -15.606589 4.6378296
#> [5,] -14.014565 8.1367691
#> [6,] -9.061479 2.6155918
interpolation_mds_conf$eigen
#> [1] 86.61081 16.94258
reduced_mds_conf <- reduced_mds(x = x, l = 200, r = 2, n_cores = 1)
head(reduced_mds_conf$points)
#> [,1] [,2]
#> [1,] -5.351389 0.7611677
#> [2,] 3.304342 -4.5616023
#> [3,] -7.302640 8.3011158
#> [4,] 15.673700 4.7006125
#> [5,] 14.069313 8.2312053
#> [6,] 9.110989 2.6164607
reduced_mds_conf$eigen
#> [1] 81.83749 17.31284
pivot_mds_conf <- pivot_mds(x = x, num_pivots = 200, r = 2)
head(pivot_mds_conf$points)
#> [,1] [,2]
#> [1,] 5.394381 0.653598
#> [2,] -3.538906 -4.580966
#> [3,] 7.730890 8.216092
#> [4,] -15.382590 4.823825
#> [5,] -13.580535 8.303857
#> [6,] -8.941668 2.738167
pivot_mds_conf$eigen
#> [1] 80.62164 16.28707
divide_mds_conf <- divide_conquer_mds(x = x, l = 200, c_points = 5 * 2, r = 2, n_cores = 1)
head(divide_mds_conf$points)
#> [,1] [,2]
#> [1,] 5.600940 1.016067
#> [2,] -3.697173 -4.910147
#> [3,] 5.899926 8.319883
#> [4,] -15.286603 2.617717
#> [5,] -13.690950 8.371893
#> [6,] -9.687884 2.328566
divide_mds_conf$eigen
#> [1] 84.41986 16.86691
fast_mds_conf <- fast_mds(x = x, l = 200, s_points = 2*2, r = 2, n_cores = 1)
head(fast_mds_conf$points)
#> [,1] [,2]
#> [1,] 4.802321 0.5703175
#> [2,] -3.555341 -4.0507039
#> [3,] 6.766592 8.0851116
#> [4,] -16.051768 4.3472176
#> [5,] -14.437049 8.4028915
#> [6,] -9.422427 2.4428193
fast_mds_conf$eigen
#> [1] 80.70308 16.11917
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.