Commit Graph

178 Commits

Author SHA1 Message Date
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
Vinzent Steinberg
dcb006e6e0 Merge branch 'master' of https://github.com/vks/average 2018-03-06 15:56:09 +01:00
Vinzent Steinberg
3a0dcafd21 Implement histograms
In order for them to have constant size, a macro is provided to crate
the histogram type. This should be replaced by const generics once Rust
has them.
2018-03-06 15:54:30 +01:00
Vinzent Steinberg
87bf71baa4 variable -> growing 2018-03-01 01:54:41 +01:00
Vinzent Steinberg
f553a06521 Mention quantiles crate 2018-03-01 01:40:02 +01:00
Vinzent Steinberg
8b5fb44500 Clarify limitations of quantile algorithm
Refs #10.
2018-03-01 01:33:39 +01:00
Vinzent Steinberg
e4345f5046 impl FromIterator<&f64> and FromIterator<&(f64, f64)>
This allows to write

    let k: Kurtosis = a.iter().collect();

instead of

    let k: Kurtosis = a.iter().map(|x| *x).collect();

but breaks type inference for code like

    let m: Min = (1..6).map(Into::into).collect();

where

    let m: Min = (1..6).map(f64::from).collect();

has to be used instead.

Fixes #8.
2018-02-28 23:44:40 +01:00
Vinzent Steinberg
68a4fa64cb Restore compatibility with stable 2018-01-12 14:23:38 +01:00
Vinzent Steinberg
d539342bf1 Moments: Add serde test 2018-01-11 19:42:41 +01:00
Vinzent Steinberg
a6a477d621 Benchmark generic vs. handwritten implementation of kurtosis
Also restore no_std and remove printing left over from debugging.
2018-01-11 19:37:25 +01:00
Vinzent Steinberg
785e2141e0 Moments: Refactor merge to be in-place 2018-01-11 19:30:51 +01:00
Vinzent Steinberg
383c85c470 Improve test slightly 2018-01-11 19:25:25 +01:00
Vinzent Steinberg
0d6cf939d1 Clarify type of kurtosis 2018-01-11 19:22:11 +01:00