[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1023856: ITP: libscientific -- A C framework for multivariate and other statistical analysis.



Package: wnpp
Severity: wishlist
Owner: Giuseppe Marco Randazzo <gmrandazzo@gmail.com>
X-Debbugs-Cc: debian-devel@lists.debian.org

* Package name    : libscientific
  Version         : 1.3.0
  Upstream Author : Giuseppe Marco Randazzo <gmrandazzo@gmail.com>
* URL             : https://github.com/gmrandazzo/libscientific
* License         : (GPL-3+)
  Programming Lang: (C, Python)
  Description     : A C framework for multivariate and other statistical analysis.

  Libscientific features include:
    * Principal Component Analysis
    * Partial Least Squares
    * Multiple Linear Regression
    * Unfold Principal Component Analysis
    * Unfold Partial Least Squares
    * Fisher Linear Discriminant Analysis
    * Kmeans++ Clustering
    * Hierarchical Clustering
    * Most Descriptive Compound selection
    * Most Dissimilar Compound selection
    * Statistical measures: R2, MSE, MAE, RMSE, Sensitivity, PPV
    * Yates Analysis
    * Receiver Operating Characteristic curve anaysis (ROC)
    * Precision-Recal curve analysis
    * matrix-Matrix Euclidean, Manhattan, Cosine and Mahalanobis distances
    * Numerical integration
    * Natural cubic spline interpolation and prediction
    * Linear algebra (Eigenvector/value and SVD)
    * Ordinary Least Squares solver
    * Linear equation Solver
    * Nelder-Mead Simplex Optimization
    * Cross validation methods (Bootstrap k-fold, Leave-One-Out, Y-Scrambling)

- Why is this package useful/relevant?
 
This package is a library written in C and made to run multivariate analyses
such as Principal Component Analysis (PCA), Partial Least Squares (PLS),
Multiway Principal Component Analysis (UPCA),
Multiway Partial Least Squares (UPLS), Linear Discriminant Analysis (LDA),
and other statistical and numerical methods.
PCA and PLS implement the NIPALS algorithm well described
here DOI:10.1016/0003-2670(86)80028-9. UPCA and UPLS instead implement 
the S. Wold method described here DOI:10.1002/cem.1180010107.
Other methods are described in the upstream readme file.
This library also provides a python foreign function enabling 
the user to call the framework directly from python.

- Is it a dependency for another package?
Yes. This package is used by QStudioMetrics, a C++/Qt
graphical user interface.
 
- Do you use it?
Yes. Since I have developed this in 2011 with QStudioMetrics and 
other software for molecular modeling and drug design.

- If there are other packages providing similar functionality,
  how does it compare?

As of today, I found something similar to libscientific,
far away from the possibility that this library gives to users.
I want to mention three R packages:
-r-cran-fmultivar
-r-cran-factominer
-r-cran-labdsv
and another task-specific software, mantis-xray, a multivariate analysis tool
for x-ray Spectromicroscopy. The three R packages do not implement the NIPALS
algorithm; instead, they implement an SVD approach.
The task-specific package instead uses an eigenvalue decomposition method,
wich differs from the previously mentioned NIPALS algorithm.
Moreover, all the previously mentioned software does not provide other methods,
such as UPCA/UPLS. This package provides more freedom and
can be used for broad range of applications. 

- How do you plan to maintain it? Inside a packaging team
  (check list at https://wiki.debian.org/Teams)? Are you
  looking for co-maintainers? Do you need a sponsor?

Ready to maintain in solo or open to do this inside a packaging 
team/co-maintainer. I already have a sponsor.

Thank you!


Reply to: