# Commons-Math Wish List

A list of feature requests made by Commons-Math users, contributors, and committers. These requests will be considered when deciding on new functionality for future releases. At any time, additional feature requests can be added simply by editing this page.

- Enabling math3.stat for ANY usage in the data mining context, there must be a MissingValues class that is able to be switched off, to hold a list of missing values, etc. This refers to any class that imports data (like DescriptiveStatistics or clustering); this is also mandatory for clustering in real-life contexts (see next entry)
- Enabling math3.clustering for ANY reasonable usage in the data mining context, there must be a small extension for the KNN++ clustering method: a usevector, of the same length as the variable vector, holding 0|1 and indicating whether a variable (column) should be used: a working versoin (exhibits also the MissingValues class) is prototypicall available here: http://code.google.com/p/noolabsimplecluster/
- Add more special math functions such as Bessel functions and so on.
- Add support for iterative linear solvers (see discussion http://mail-archives.apache.org/mod_mbox/commons-dev/201104.mbox/%3C20110413062230.2B0E41405982C@svoboda.polytechnique.org%3E): see wiki page IterativeLinearSolvers
- Add remedian statistic - The Remedian: a Robust Averaging method for Large Data Sets
- Add Dirichlet, Multinomial distributions
- Investigate alternative methods for generating values from discrete distributions http://www.jstatsoft.org/v11/i03/
- Resampling http://markmail.org/message/u3diwc76m66r7qme
- Applied-mathematical/Mathematical-physics algorithms? - Henri Yandell
- Examples, please? This item goes to the heart of what I consider an ongoing lack of consensus about what Commons-Math is supposed to be for. Should it include discipline-specific algorithms that do not overlap core numerical mathematical areas? Maybe, but we should discuss it. – AlChou

- Numerical Enhancements
- Post-SOC TODO List - Xiaogang Zhang

- Implement monte carlo simulation http://en.wikipedia.org/wiki/Monte_Carlo_method
- Prime Numbers Functionality – SharonLourduraj
- Ofcourse, we will take it slowly, this area is vast and time consuming.
- Implementing algorithms for practicality, and look into optimizing the algorithms (in terms of implementing it).

- AbstractStorelessUnivariateStatistic.evaluate(...) and all the workhorse implementations in subclasses should be static methods. – NickGuenther
- StandardDeviation has versions of .evaluate which take a precalculated mean. It would be nice if the same sort of thing could be had for all the other measures (e.g. skewness & kurtosis should be able to take both precalculated means and standard deviations) – NickGuenther
- Generalized Matrix Inversion, as I describe on http://mjollnir.com/matrix/ – Rand Huso
- Estimation of Omega in GLSMultipleLinearRegression using, for example Feasible Generalized Least Squares http://en.wikipedia.org/wiki/Feasible_generalized_least_squares
- Add Laplace transform, Z-transform and similar signal/image processing and filtering related essentials.
- Add further functionality for BigDecimal and BigInteger arithmetic in particular a power function that will input two BigDecimal type numbers and raise one to the power of the other and return the result correct to a number of specified decimal places. This may best be added to the util.MathUtils class along with other pow functions - suggested by Andy Turner (2011-01-20)
- Add fitter functions for linear models similar to
*lm.wfit*in*R*(2011-11-14) - A mixed integer linear programming solver
- A quadratic programming solver