2
0
mirror of https://github.com/boostorg/math.git synced 2026-01-19 04:22:09 +00:00

23 Commits

Author SHA1 Message Date
Rasmus Henningsson
0852c16a2a median_absolute_deviation bug fix for non-zero center (#997)
Fix bug causing median_absolute_deviation to return incorrect values
when a non-zero center (such as median which is the default) was used.
2023-06-19 09:18:15 +02:00
Matt Borland
4eb6ba6580 Widen gini coefficient test tolerance (#579) 2021-03-23 13:05:40 -04:00
jzmaddock
d7c202ad1d Merge pull request #574 from boostorg/execution_hdr_fix
Fix pp-logic for univariate_statistics_test.cpp
2021-03-19 08:53:07 +00:00
jzmaddock
488a454ec7 Fix pp-logic for univariate_statistics_test.cpp 2021-03-17 18:32:42 +00:00
Matt Borland
d59c734c5e Remove boost.assert 2021-03-14 12:22:26 +03:00
Matt Borland
1eb3c71f8a Implement Policies in Statistics (#434)
* Initial Commit [WIP][CI SKIP]
Policies for mean implemented and forced vectorization

* First cut at integer variance [CI SKIP]

* Functional variance impl [WIP][CI SKIP]

* Work on variance [CI SKIP]
Details are now moved into detail files.
Recursively decomposes sufficient range size until max threads achieved.
Single failing test for integral, not implemented for Reals.

* Parallel integer variance complete [CI SKIP]

* All variance policies complete [CI SKIP]

* Update mean_and_sample_variance [CI SKIP]

* Median complete for all types [CI SKIP]

* Median absolute deviation complete for all types
[CI SKIP]

* Refactored sequential first four moments impls
[CI SKIP]

* Setup test cases for first four moments [WIP]
[CI SKIP]

* Sequential impl pass [CI SKIP]

* Parallel interface impl. Fails some tests
[CI SKIP]

* Interquartile range passes for all existing test
[CI SKIP]

* Gini coefficient generally implemented
Does not support long double or cpp_bin_float_50s
[CI SKIP]

* Sample gini coef implemented w/same constraints
[CI SKIP]

* Add benchmarks [CI SKIP]

* First four moments complete for most types
[CI SKIP]

* Skewness restructured. Currently INOP for non-seq
[CI SKIP]

* Fix floating point skewness [CI SKIP]

* Skewness complete [CI SKIP]

* Kurtosis complete [CI SKIP]

* Gini coefficient complete [CI SKIP]

Removes atomics which expands number of compatible types.

* Mode complete [CI SKIP]

Additionally mode now supports floating types by using an unordered_map to store frequency

* Garbage cleanup [CI SKIP]

* Doc updates [CI SKIP]

* Mean cleanup [CI SKIP]

* Cleanup variance [CI SKIP]

Remove duplicate impls that vary only be return type

* Variance Cleanup [CI SKIP]

Remove duplicate impls

* Skewness cleanup [CI SKIP]

* Update performance [CI SKIP]

* Add swap file to gitignore [CI SKIP]

* Add missing comma [CI SKIP]

* Improve par mode performance regression [CI SKIP]
[WIP] Parallel mode still ~2 orders of magnitude slower

* mode performance improvement [CI SKIP]

* Improved data handling - mode [CI SKIP]

* Additional overloads to match STL proposal
[CI SKIP]

* Updates to mode and documentation

* Remove dependency and fix todo [CI SKIP]

* Minor fixes [CI SKIP]

* Fix multiprecision issues [CI SKIP]

* Remove dependency. Minor change to thread counting
[CI SKIP]

* Standardize seq mean impl [CI SKIP]

* Fix doc brackets [CI SKIP]

* Remove duplicated sort on gini coef [CI SKIP]

* C++11 all that is required for sequential methods
[CI SKIP]

* Fixes for CI failure

* More CI fixes

* Fixes for MSVC issues
Fix gitignore merge conflict
Adjust test tol to match others

* Fix MSVC lang macro

* More small fixes for vinatge compilers

* Minor fix for MSVC 14.2 c++17 [CI SKIP]

* Cleanup docs, test file, and remove cruft
[CI SKIP]

* Delete par_unseq tests [CI SKIP]

* Change link to accumulators [CI SKIP]

* Add bigobj flag to failing build

* Remove redundant impl [WIP][CI SKIP]

* Initial cut at linear decomposition [WIP][CI SKIP]

* Passes tests [CI SKIP]

* Various CI fixes

* More CI fixes

* Delete extra impl and add linker flags

* Try CI without TBB

* Restrict compiler support

* Restrict c++ version
2021-01-22 09:42:16 -05:00
Matt Borland
699d326f64 Implemented mode and associated tests (#390)
* Implemented mode and associated tests

* Clarity and complexity changes

* Added google benchmark

* Small changes to mode. More tests.

* Seperated into sorted and non-sorted functions

* Fixed data types and removed copying

* Fixed bounds checking

* Additional tests and cleanup.

* Added tests for std::list and std::forward_list

* Small testing changes and documentation

* Added modes memory allocation and faster insertion

* Changed return type, and modified tests

* Removed copied iterator and edge cases.

* Documentation fixes
2020-07-09 13:28:29 -04:00
NAThompson
87bb7d29fb Readable code for interquartile_range. 2019-12-31 12:53:01 -05:00
NAThompson
ff528a8f1d Commit working version before changing to readable code. 2019-12-31 12:29:05 -05:00
Nick Thompson
f943649e68 First pass at interquartile range. 2019-12-29 15:34:22 -05:00
Nick
9e1a5f273a One-sample t-test [CI SKIP] 2019-10-05 15:56:02 -04:00
pabristow
0ab00c3f9d [CI SKIP] changes to get inspect program problem-free, but one test failure in recurrence.cpp 2019-08-23 09:25:22 +01:00
Nick
165cf9e480 Vectorize mean calculation. 2019-04-13 17:22:24 -04:00
Nick Thompson
93ccc669d9 Remove integer tests for median absolute deviation; need to think more on how this should work (which it can) [CI SKIP] 2019-02-02 11:14:06 -07:00
Nick Thompson
79bd607704 MSVC 14.1 does not appreciate uint8_t; no matter-use unsigned for the test instead [CI SKIP] 2019-01-23 09:01:41 -07:00
Nick Thompson
ff366e85a2 Add variance of N-sided die as unit test [CI SKIP] 2019-01-18 10:00:43 -07:00
Nick Thompson
f3af883c6d Patch up univariate statistics for some integer types. [CI SKIP] 2019-01-12 14:57:16 -07:00
Nick Thompson
fb4f7748cd Refactor kurtosis calculation to use first_four_moments. 2019-01-11 15:19:48 -07:00
Nick Thompson
df447ae00d Rename 'absolute_median' to 'median_absolute_deviation' [CI SKIP] 2019-01-07 10:50:06 -07:00
Nick Thompson
4848accb77 Add unit tests demonstrating that the kurtosis of various continuous distributions is calculated correctly. Add excess_kurtosis to make clear the working definition of kurtosis. [CI SKIP] 2018-12-25 23:00:46 -07:00
Nick Thompson
d509957642 Instead of using 'population_stat' in calls, simply call 'stat', and provide 'sample_stat' when an unbiased estimator of stat exists. [CI SKIP] 2018-12-17 14:39:30 -07:00
Nick Thompson
87f4bc9b11 Add skewness and kurtosis [CI SKIP] 2018-12-11 14:01:28 -07:00
Nick Thompson
94ceca1e43 Split descriptive_statistics.hpp into univariate_statistics.hpp and a currently-hypothetical bivariate_statistics.hpp [CI SKIP] 2018-12-10 12:05:05 -07:00