Log
-
Set count to zero after creating a new summary by Caio 10 years ago
-
Assert we don't change counts during Compress() π¬ by Caio 10 years ago
So that we avoid causing a regression (Ref: PR #10)
-
Merge pull request #10 from ianwilkes/master π¬ by Caio 10 years ago
Fix serious accuracy bug and improve performance
-
Enable building against go 1.6 by Caio 10 years ago
-
Merge pull request #7 from ajgillis/master π¬ by Caio 10 years ago
Provide ForEachCentroid() and Len() functins to access internal data.
-
ForEachCentroid should not return value, since this makes assumptions about the behavior of the supplied function. by Andrew Gillis 10 years ago
-
Provide ForEachCentroid() and Len() functins to access internal data. by Andrew Gillis 10 years ago
-
Add link to "go report" π¬ by Caio 10 years ago
Kool-aid++
-
Add tests for the panic() codepaths π¬ by Caio 10 years ago
Pretty much useless, but I was curious how to test for that. A bit awkward at first though it kind of makes sense.
-
Move serialization tests into serialization_test.go by Caio 10 years ago
-
Don't allow a K smaller than 1.0f π¬ by Caio 10 years ago
For it makes no sense whatsoever.
-
Add some more docs for tdigest.TDigest by Caio 10 years ago
-
Add missing zero from tdigest.New docs π¬ by Caio 10 years ago
It's 100, not 10.
-
Get rid of the unused Remove() method by Caio 10 years ago
-
Get rid of updateCentroid and addCentroid proxies π¬ by Caio 10 years ago
Less code is almost always better
-
Skip a binary search when updating centroid π¬ by Caio 10 years ago
Since updateCentroid() is called by picking from a byproduct of the current digest state, we can reuse the information we have to know which index to update without doing another search. Pure micro optimization, but it does improve things a bit at the cost of growing the centroid struct a bit: > $ go test -run XXX -bench . > PASS > BenchmarkAdd1-4 5000000 373 ns/op > BenchmarkAdd10-4 2000000 626 ns/op > BenchmarkAdd100-4 1000000 1579 ns/op > ok github.com/caio/go-tdigest 6.265s
-
Make summary.Add() handle duplicates by updating the centroid π¬ by Caio 10 years ago
No point spreading this logic around.
-
Update centroids in place π¬ by Caio 10 years ago
Unsurprisingly, avoid a bunch of copies is beneficial :-) > $ go test -run XXX -bench . > PASS > BenchmarkAdd1-4 5000000 353 ns/op > BenchmarkAdd10-4 2000000 674 ns/op > BenchmarkAdd100-4 1000000 1788 ns/op
-
Don't add a centroid twice by Caio 10 years ago
-
Rename the last `Percentile` reference to `Quantile` by Caio 10 years ago
-
Rename TDigest.Percentile to Quantile π¬ by Caio 10 years ago
Quantile is the correct name given that the range is [0,1]
-
Test extreme quantiles in TestTInternals by Caio 10 years ago
-
Benchmarks: Only record timings for tdigest.Add() by Caio 10 years ago
-
Remove yet another useless String() method π¬ by Caio 10 years ago
This time I didn't forget to run `go vet`...
-
Add gocover.io flair π¬ by Caio 10 years ago
Feels like a pokΓ©mon trainer going after all these badges
-
summary.String() was useful for a test error message... π¬ by Caio 10 years ago
Yeah, right. I need to get used to this `go vet` thing...
-
Get rid of summary.String() π¬ by Caio 10 years ago
Golang's default toString is more than enough now.
-
Get rid of centroid.Equals()/TestCentroid π¬ by Caio 10 years ago
Useless abstraction is useless
-
Rephrase the disclaimer a bit π¬ by Caio 10 years ago
I did, after all, spend some time making this thing work with acceptable performance.