{"id":15457683,"url":"https://github.com/neysofu/tyche","last_synced_at":"2025-04-30T06:29:56.932Z","repository":{"id":57721745,"uuid":"71303213","full_name":"neysofu/tyche","owner":"neysofu","description":"Statistics utilities for the JVM - in Scala!","archived":false,"fork":false,"pushed_at":"2017-11-13T16:21:20.000Z","size":1122,"stargazers_count":92,"open_issues_count":1,"forks_count":4,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-12-13T05:03:22.804Z","etag":null,"topics":["functional-programming","probability-calculator","probability-distribution","statistics"],"latest_commit_sha":null,"homepage":"https://neysofu.github.io/tyche","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neysofu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-10-19T00:29:50.000Z","updated_at":"2024-03-17T23:00:14.000Z","dependencies_parsed_at":"2022-09-26T21:50:20.989Z","dependency_job_id":null,"html_url":"https://github.com/neysofu/tyche","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neysofu%2Ftyche","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neysofu%2Ftyche/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neysofu%2Ftyche/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neysofu%2Ftyche/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neysofu","download_url":"https://codeload.github.com/neysofu/tyche/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231364138,"owners_count":18365407,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["functional-programming","probability-calculator","probability-distribution","statistics"],"created_at":"2024-10-01T22:49:40.702Z","updated_at":"2024-12-26T17:50:17.746Z","avatar_url":"https://github.com/neysofu.png","language":"Scala","funding_links":[],"categories":["Science and Data Analysis","Programming Languages"],"sub_categories":["[Scala](https://github.com/lauris/awesome-scala)"],"readme":"# Tyche ![build](https://travis-ci.org/neysofu/tyche.svg?branch=master) ![scala version](https://img.shields.io/badge/scala-2.12.0-blue.svg)\nTyche 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.\n\n- Discrete \u0026 Continuous distributions.\n- Foolproof analysis tools.\n- Markov chains and lattice walks.\n- Simple Random Sampling (SRS) support.\n- Extensive documentation and good test coverage.\n\nThe library is written in Scala 2.12.0 and was tested last with sbt 0.13.13.\n\nBehold, the power of Tyche:\n\n```scala\n// In a country in which people only want boys every family continues to\n// have children until they have a boy. If they have a girl, they have\n// another child. If they have a boy, they stop. What is the average\n// amount of kids per family?\n\nsealed trait Child\nobject Boy extends Child\nobject Girl extends Child\n\nval family = tyche.DiscreteDistribution.uniform(Boy, Girl)\n  .until(_ contains Boy)\n  .map(_.size)\n\nprintln(family.mean) // ~ 2.0\n```\n\n## Setup\nTyche is published to *Maven Central*, so you just need to paste this line in you build configuration file:\n\n\tlibraryDependencies += \"com.github.neysofu\" %% \"tyche\" % \"0.4.3\"\n\n## How to contribute\nFeedback and suggestions are very welcome! I invite you to check for open [issues](https://github.com/neysofu/tyche/issues) or open a fresh one to discuss around a bug or a feature idea. Please drop me a line at `filippocosta.italy@gmail.com` if you wish you contact me.\n\nBonus points if you submit code!\n\n1. Branch off from **master** and start making your changes.\n2. Write a test which shows that the code works as expected.\n3. Please, please write some documentation. One or two lines per entity are enough.\n4. Send a pull request.\n\n## Alternatives\nBe sure to check out some great alternatives:\n\n- [Apache Spark](http://spark.apache.org/docs/latest/mllib-statistics.html)\n- [Breeze](https://github.com/scalanlp/breeze)\n- [probability-monad](https://github.com/jliszka/probability-monad)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneysofu%2Ftyche","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneysofu%2Ftyche","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneysofu%2Ftyche/lists"}