Commit Graph

190 Commits

Author SHA1 Message Date
Vinzent Steinberg bb7c8d7a27 Increase minimal required Rust version (due to lazy_static) 2019-05-22 16:11:16 +02:00
Vinzent Steinberg 25d894a2f6 Use custom implementation of binomial coefficient
This lets us get rid of the num-integer dependency and makes the
performance of the code generated by `define_moments` close to that of
`Kurtosis`. Before, it was several times slower.

However, the custom implementation is more vulnerable to integer
overflow. In practise, this should not matter, since it does not make
sense to calculate moments of very high order.
2019-05-22 15:51:11 +02:00
Vinzent Steinberg 5b8ace3fb4 Update benchmarks 2019-05-22 14:45:04 +02:00
Vinzent Steinberg 3f82a320f9 Use proptest to test reasonable bounds of mean 2019-04-25 14:53:19 +02:00
Vinzent Steinberg a4098571fd Bump version 2019-04-25 13:53:21 +02:00
Vinzent Steinberg c10616c46e Improve `concatenate!` to support usage outside braces
Fixes #12.
2019-04-25 13:51:33 +02:00
Vinzent Steinberg 4e6082533c Guarantee and test minimal version 2019-01-22 14:36:53 +01:00
Vinzent Steinberg 547149bfd2 Fix serde support
* Use correct Cargo flags.
* Fix tests.
* Fix histogram serialization.
2019-01-22 14:29:29 +01:00
Vinzent Steinberg 15ff7e9ab4 Bump version 2019-01-18 15:56:30 +01:00
Vinzent Steinberg dc2d21bea9 Update dependencies 2019-01-18 15:55:37 +01:00
Vinzent Steinberg 5a6fb296a4 Fix typo 2018-07-27 16:55:02 +02:00
Vinzent Steinberg 8c5121ca08 Suggest correct Serde feature 2018-07-27 16:53:27 +02:00
Vinzent Steinberg f9dee3bf9b Fix clippy warning 2018-07-27 16:52:01 +02:00
Vinzent Steinberg bb994f0f22 Improve docs on calculation of arbitrary moments 2018-07-27 16:50:02 +02:00
Vinzent Steinberg f13be77348 Bump version 2018-07-27 15:15:23 +02:00
Vinzent Steinberg 537a00c053 Fix type inference failure on some targets 2018-07-27 15:14:44 +02:00
Vinzent Steinberg 365c127e35 Bump version 2018-07-24 18:58:55 +02:00
Vinzent Steinberg ee110a774f define_histogram: Fix potential issue 2018-07-24 18:58:17 +02:00
Vinzent Steinberg 5807e211dc Clarify `core` is required for `define_histogram` 2018-07-24 18:52:40 +02:00
Vinzent Steinberg 159af1df99 Bump version 2018-07-24 18:22:00 +02:00
Vinzent Steinberg 56344750a7 Fixes to `Histogram`
1. Now histograms with more than 31 bins are supported (before there
   were issues with missing implementations on arrays.)
2. The items defined by `define_histogram!` are in their own module, to
   avoid issues with Rust's lack of macro hygiene for items.
2018-07-24 18:18:05 +02:00
Vinzent Steinberg b010d0cae6 Fix moments benchmark 2018-07-11 15:52:57 +02:00
Vinzent Steinberg 34eddeec1e Fix Travis serde build 2018-07-11 13:04:26 +02:00
Vinzent Steinberg 7ac16c974e Mention no_std support 2018-07-11 12:58:17 +02:00
Vinzent Steinberg a7dde93df8 More idiomatic serde support
* Follow the suggestions from the Serde docs.
* Rename the feature from `serde` to `serde1`.
* Fix a doctest.
* Mention the feature in the README.
2018-07-11 12:54:37 +02:00
Vinzent Steinberg 34d33ef21a Slightly improve calculation of standardized moment
Also test more of the trivial cases.
2018-07-11 12:37:06 +02:00
Vinzent Steinberg 3e7a66b519 Remove dead code 2018-07-11 12:31:32 +02:00
Vinzent Steinberg 9a2047a05d Bump version 2018-07-10 18:07:03 +02:00
Vinzent Steinberg 663009f358 Make it possible to calculate an arbitrary number of moments 2018-07-10 17:19:57 +02:00
Vinzent Steinberg 1e7a852862 Improve quantile tests 2018-07-10 16:31:33 +02:00
Vinzent Steinberg 0de183127e Implement merge for Histogram 2018-07-06 13:27:26 +02:00
Vinzent Steinberg f22c7b362d Update README 2018-07-06 13:11:40 +02:00
Vinzent Steinberg fcbe51f1dd Improve Histogram docs by exporting the Histogram10 special case 2018-07-06 13:08:33 +02:00
Vinzent Steinberg 554d4ca596 Use float-ord instead of quickersort
The latter has been deprecated.
2018-07-06 11:01:41 +02:00
Vinzent Steinberg 0faada0687 Fix benchmarks 2018-07-06 10:56:35 +02:00
Vinzent Steinberg ef41836ec5 Small improvements to Histogram docs 2018-07-06 10:52:19 +02:00
Vinzent Steinberg 7f8663c23e Update dependencies 2018-07-06 10:31:26 +02:00
Vinzent Steinberg 9f1c28147c Moments: Improve docs 2018-07-06 10:08:18 +02:00
Vinzent Steinberg 41e7df435d Relax skewness test for exponential distribution
This was sometimes making the CI tests fail.
2018-03-07 17:57:49 +01:00
Vinzent Steinberg 7e06374843 histogram: Implement variance
This is useful for error estimates.
2018-03-07 17:45:38 +01:00
Vinzent Steinberg 0259728bb8 Fix constant width histograms for ranges not starting at 0 2018-03-07 17:37:06 +01:00
Vinzent Steinberg c04ce8887e histogram: Implement `AddAssign` and `MulAssign`
Also clarify documentation and name of `min`/`max`.
2018-03-07 17:08:19 +01:00
Vinzent Steinberg 2775f78e8e Expose finding of bin for given sample 2018-03-06 19:31:09 +01:00
Vinzent Steinberg 682fec27fe histogram: Implement min, max and reset 2018-03-06 19:22:42 +01:00
Vinzent Steinberg 08445ba2a3 histogram: Inline default impls 2018-03-06 19:03:46 +01:00
Vinzent Steinberg d1ab9630af histogram: Implement iteration over bin centers 2018-03-06 18:55:21 +01:00
Vinzent Steinberg 3f22412aa3 Fix clippy warnings 2018-03-06 18:48:08 +01:00
Vinzent Steinberg 86a411143e histogram: Implement iteration of bin widths and normalized bins 2018-03-06 18:27:31 +01:00
Vinzent Steinberg c64544baa8 Implement iteration of histograms 2018-03-06 17:16:54 +01:00
Vinzent Steinberg ba93bb4e65 Refactor histograms to use common trait 2018-03-06 16:26:02 +01:00