Best library for statistics in C++? [closed]

2019-01-07 08:31发布

问题:

I'm looking for high performance code (needs to run in real-time), preferably open source, but if there is nothing that's free and high-perf, I'll take something well supported and of high quality for a cost.

Any suggestions?

These are the ones I've found so far, in no particular order:

CodeCogs

GSL

Cephes

Boost MathToolkit

Blitz++

TNT

回答1:

Check the links on mathtools.net. The page for statistics libraries for C++ has links. Another page http://www.thefreecountry.com/sourcecode/mathematics.shtml lists few more.

Have you checked the 'R project'? I think you can call 'R objects' from C/C++.



回答2:

I'm surprised nobody's mentioned ALGLIB: http://www.alglib.net/



回答3:

Root has pretty good statistical support. At least as us particle physics types judge these thing. Works in cint interpretation or as a native c++ library.



回答4:

TNT is for matrix calculations but doesn't have any statistics functionality. (e.g. erf, mean/std/cov etc)

I haven't used Boost Math Toolkit, but skimming through the documentation, it looks like it has the opposite problem, e.g. lots of goodies for scalar calculations, but no support (that I could find) for multivariate situations.



回答5:

I have used the IT++ library in the past, this library supports ACML and MKL routines trough BLAS and LAPACK. If it are calculations that need to happen fast, there is the possibility of using this library together with HPC, this is an although undocumented feature so some thought will be required. The focus on this library is however positioned on matrix calculations, but many normal mathematic and statistic functions can be found in this framework thanks to its excellent signal processing support.