Stats is a prototype to explore how intuitive we can make statistics in Ruby.
Starting out, the purpose of the library is to be readable (for people studying statistics), to be well-tested (against R and Python statistical functions), and to be useful for Small Data. Big Data can come later, if I have enough fun. With stats, I aim to create an API that makes statistics intuitive and harder to mess up. For example, I’d like to take a stab at an assumption framework that can tag specific functions with assumptions that will throw warnings if they’re not met.
So far, the library features:
- Standard statistics functions (listed below)
- The basis for an assumption framework (which would detect invalid inputs where possible and throw warnings)
I’ve added a wrapper around GSL distribution functions, for more intuitive access and testing.
- Normal distribution - PDF & CDF
- Chi square distribution - PDF & CDF
- T distribution - PDF & CDF
- F distribution - PDF & CDF
- Mean, arithmetic
- Mean, geometric
- Standard deviation
- Standard error of the mean (for samples)
- Relative standard error of the mean (for samples)
- Coefficient of variation
- Chi square
- T-test, single sample
- T-test, two-sample
- T-test, repeated measures
- Wilcoxon rank sum test
- Kruskall-Wallis H test
- ANOVA, one-way
Support & other
- Basic assumption framework
Check out the README to see which functions I’d like to implement next.
Here are some statistical resources that will be incorporated into the assumptions framework: