There was already a question like this, but it was not answered, so I try to post it again. Does anyone know of an open-source implementation of a partial least squares algorithm in C++ (or C)? Or maybe a library that does it?
Asked
Active
Viewed 4,714 times
4 Answers
7
- FastPLS is a library that provides a C/C++ and MATLAB interface for speeding up partial least squares. Its author is Balaji Vasan Srinivasan. The author worked under the supervision of Professor Ramani Duraiswami at the University of Maryland, College Park, MD, USA.
- Partial Least Squares and Generalized Partial Least Squares models based on NIPALS algorithm.
- implement by yourself using matrix libraries such as Armadillo
- PLSNiplas, opencv is required.

0x90
- 39,472
- 36
- 165
- 245
-
Suggestion #2 (plstools) appears to be for R, not C or C++. – Reunanen Jan 25 '13 at 14:02
-
@Pukku from the c code wrapper: Title: pls.c Description: C engine for pls computation based on NIPAS algorithm Author: Pierre BADY
– 0x90 Jan 25 '13 at 14:07 -
Ok, found it now when checking out the project from Subversion. Apparently this file was not included in the offered v1.0-6 zip archive, so I did not think it would exist. – Reunanen Jan 28 '13 at 08:23
-
Or use [Eigen](http://eigen.tuxfamily.org) instead of Armadilo. I find it faster and better. – Royi Aug 26 '17 at 21:47
3
MTK++ is a library for drug design.
It's builds upon various matrix based libraries such as:
The Basic Linear Algebra Subprograms (BLAS), Linear Algebra PACKage (LAPACK), Boost, eigen, Qt, tinyxml and xerces-c libraries
It has a partial least squares component.
It is open-source but the source isn't hosted on-line. You have to contact the author to get it.

Peter Wood
- 23,859
- 5
- 60
- 99
1
found this one here: https://github.com/tjhladish/PLS
it is c++ and using the Eigen lib

Andreas
- 380
- 3
- 6