user2149631 user2149631 - 4 months ago 45
R Question

Any R implementation for dimension reduction using random projection?

I have a large p (~20K) and small n (~500) problem. The first thing I was thinking is dimension reduction. After trying PCA, robust PCA, ICA, removing highly correlated features, I was thinking to use Random Projection. However, there is no simple R implementation of Random Projection.

I have found a few random projection R packages, like

  1. MCLUST:

  2. RPEnsemble:

But, it seems that they don't support random projection directly for dimension reduction. I have limited knowledge about random projection, but I found two functions in sklearn support this:

Gaussian random projection and Sparse random projection:

And it has pretty simple function interface. Are there any similar implementation to do dimension reduction with Random Projection in R?


I concur that the RPEnsemble package doesn't seem to expose the low-level methods that would allow you to use only that feature in any convenient form.

I did however come across this R source code which seems fairly straight-forward and reasonably documented: R source code for random projections. This is part of the clusterv package and you can download it there.