All Projects → neysofu → Tyche

neysofu / Tyche

Licence: mit
Statistics utilities for the JVM - in Scala!

Programming Languages

scala
5932 projects

Projects that are alternatives of or similar to Tyche

Flex
Probabilistic deep learning for data streams.
Stars: ✭ 127 (+36.56%)
Mutual labels:  statistics, functional-programming
Yalinqo
Yet Another LINQ to Objects for PHP [Simplified BSD]
Stars: ✭ 400 (+330.11%)
Mutual labels:  statistics, functional-programming
Facsimile
Facsimile Simulation Library
Stars: ✭ 20 (-78.49%)
Mutual labels:  statistics, functional-programming
Fuego
Functional Experiment in Golang
Stars: ✭ 87 (-6.45%)
Mutual labels:  functional-programming
Spring 5 Examples
This repository is contains spring-boot 2 / spring framework 5 project examples. Using reactive programming model / paradigm and Kotlin
Stars: ✭ 87 (-6.45%)
Mutual labels:  functional-programming
Spotted Leopards
Proof of concept for a cats-like library built using Dotty features
Stars: ✭ 91 (-2.15%)
Mutual labels:  functional-programming
Haskell
Stars: ✭ 91 (-2.15%)
Mutual labels:  functional-programming
Cafeapp
A Real World Business Application using F# and Suave
Stars: ✭ 86 (-7.53%)
Mutual labels:  functional-programming
Hs Gauge
Lean Haskell Benchmarking
Stars: ✭ 91 (-2.15%)
Mutual labels:  statistics
Functionalplus
Functional Programming Library for C++. Write concise and readable C++ code.
Stars: ✭ 1,286 (+1282.8%)
Mutual labels:  functional-programming
Imlazy
😴 Functional programming with lazy immutable iterables
Stars: ✭ 89 (-4.3%)
Mutual labels:  functional-programming
Kotlintutorial
Learn Kotlin programming from scratch
Stars: ✭ 88 (-5.38%)
Mutual labels:  functional-programming
Scalac Profiling
Implementation of SCP-010.
Stars: ✭ 90 (-3.23%)
Mutual labels:  statistics
Theseus
theseus, functional programming language with fully reversible computation
Stars: ✭ 87 (-6.45%)
Mutual labels:  functional-programming
Scikit Fda
Functional Data Analysis Python package
Stars: ✭ 91 (-2.15%)
Mutual labels:  statistics
Zio Logging
Simple logging for ZIO apps, with correlation, context & pluggable backends out of the box.
Stars: ✭ 85 (-8.6%)
Mutual labels:  functional-programming
Lda Topic Modeling
A PureScript, browser-based implementation of LDA topic modeling.
Stars: ✭ 91 (-2.15%)
Mutual labels:  functional-programming
Test Each
🤖 Repeat tests. Repeat tests. Repeat tests.
Stars: ✭ 89 (-4.3%)
Mutual labels:  functional-programming
Simplestatistics
🎲 Simple statistical functions implemented in readable Python.
Stars: ✭ 88 (-5.38%)
Mutual labels:  statistics
Zelig
A statistical framework that serves as a common interface to a large range of models
Stars: ✭ 89 (-4.3%)
Mutual labels:  statistics

Tyche build scala version

Tyche is a small and robust statistical library for the JVM. Many JVM-hosted numerical libraries offer similar functionalities, but they seem to be unnecessarily bloated and they fail to provide straightforward APIs. Instead, Tyche is built from the ground up in accordance to good design principles.

  • Discrete & Continuous distributions.
  • Foolproof analysis tools.
  • Markov chains and lattice walks.
  • Simple Random Sampling (SRS) support.
  • Extensive documentation and good test coverage.

The library is written in Scala 2.12.0 and was tested last with sbt 0.13.13.

Behold, the power of Tyche:

// In a country in which people only want boys every family continues to
// have children until they have a boy. If they have a girl, they have
// another child. If they have a boy, they stop. What is the average
// amount of kids per family?

sealed trait Child
object Boy extends Child
object Girl extends Child

val family = tyche.DiscreteDistribution.uniform(Boy, Girl)
  .until(_ contains Boy)
  .map(_.size)

println(family.mean) // ~ 2.0

Setup

Tyche is published to Maven Central, so you just need to paste this line in you build configuration file:

libraryDependencies += "com.github.neysofu" %% "tyche" % "0.4.3"

How to contribute

Feedback and suggestions are very welcome! I invite you to check for open issues or open a fresh one to discuss around a bug or a feature idea. Please drop me a line at [email protected] if you wish you contact me.

Bonus points if you submit code!

  1. Branch off from master and start making your changes.
  2. Write a test which shows that the code works as expected.
  3. Please, please write some documentation. One or two lines per entity are enough.
  4. Send a pull request.

Alternatives

Be sure to check out some great alternatives:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].