Star us on GitHub!
StarWelcome!
OnlineStats does statistics and data visualization for big/streaming data via online algorithms. Each algorithm:
- processes data one observation at a time.
 - uses O(1) memory.
 
Basics
1) Creating
- Stats are subtypes of 
OnlineStat{T}whereTis the type of a single observation. 
julia> using OnlineStatsjulia> m = Mean()Mean: n=0 | value=0.0julia> supertype(Mean)OnlineStat{Number}
2) Updating
- Stats can be updated with single or multiple observations e.g. 
fit!(m, 1)andfit!(m, [1,2,3]). 
julia> y = randn(100);julia> fit!(m, y)Mean: n=100 | value=-0.00382867julia> value(m)-0.003828666091082929
3) Merging
- Stats can be merged.
 
julia> y2 = randn(100);julia> m2 = fit!(Mean(), y2)Mean: n=100 | value=0.00779837julia> merge!(m, m2)Mean: n=200 | value=0.00198485