Name | phitter JSON |
Version |
1.0.0
JSON |
| download |
home_page | None |
Summary | Find the best probability distribution for your dataset and simulate processes and queues |
upload_time | 2024-11-06 02:14:56 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.9 |
license | The MIT License (MIT) Copyright (c) 2024 Sebastián José Herrera Monterrosa, Carlos Andrés Másmela Pinilla Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
keywords |
scientific
engineering
mathematics
artificial intelligence
software development
python modules
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
<p align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://gist.githubusercontent.com/phitterio/66bc7f3674eac01ae646e30ba697a6d7/raw/e96dbba0eb26b20d35e608fefc3984bd87f0010b/DarkPhitterLogo.svg" width="350">
<source media="(prefers-color-scheme: light)" srcset="https://gist.githubusercontent.com/phitterio/170ce460d7e766545265772525edecf6/raw/71b4867c6e5683455cf1d68bea5bea7eda55ce7d/LightPhitterLogo.svg" width="350">
<img alt="phitter-dark-logo" src="https://gist.githubusercontent.com/phitterio/170ce460d7e766545265772525edecf6/raw/71b4867c6e5683455cf1d68bea5bea7eda55ce7d/LightPhitterLogo.svg" width="350">
</picture>
</p>
<p align="center">
<a href="https://pypi.org/project/phitter" target="_blank">
<img src="https://img.shields.io/pypi/dm/phitter.svg?color=blue" alt="Downloads">
</a>
<a href="https://pypi.org/project/phitter" target="_blank">
<img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License">
</a>
<a href="https://pypi.org/project/phitter" target="_blank">
<img src="https://img.shields.io/pypi/pyversions/phitter?color=blue" alt="Supported Python versions">
</a>
<a href="https://github.com/phitterio/phitter-kernel/actions/workflows/unittest.yml" target="_blank">
<img src="https://github.com/phitterio/phitter-kernel/actions/workflows/unittest.yml/badge.svg" alt="Tests">
</a>
</p>
<p>
Phitter analyzes datasets and determines the best analytical probability distributions that represent them. Phitter studies over 80 probability distributions, both continuous and discrete, 3 goodness-of-fit tests, and interactive visualizations. For each selected probability distribution, a standard modeling guide is provided along with spreadsheets that detail the methodology for using the chosen distribution in data science, operations research, and artificial intelligence.
</p>
<p>
In addition, Phitter offers the capability to perform process simulations, allowing users to graph and observe minimum times for specific observations. It also supports queue simulations with flexibility to configure various parameters, such as the number of servers, maximum population size, system capacity, and different queue disciplines, including First-In-First-Out (FIFO), Last-In-First-Out (LIFO), and priority-based service (PBS).
</p>
<p>
This repository contains the implementation of the python library and the kernel of <a href="https://phitter.io">Phitter Web</a>
</p>
## Installation
### Requirements
```console
python: >=3.9
```
### PyPI
```console
pip install phitter
```
## Usage
### **_1. Fit Notebook's Tutorials_**
| Tutorial | Notebooks |
| :------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| **Fit Continuous** | <a target="_blank" href="https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/fit_continuous_ncdb.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/></a> |
| **Fit Discrete** | <a target="_blank" href="https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/fit_discrete_galton_board.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/></a> |
| **Fit Accelerate [Sample>100K]** | <a target="_blank" href="https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/fit_accelerate.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/></a> |
| **Fit Specific Disribution** | <a target="_blank" href="https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/fit_specefic_distribution.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/></a> |
| **Working Distribution** | <a target="_blank" href="https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/working_distribution.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/></a> |
### **_2. Simulation Notebook's Tutorials_**
Pending
## Documentation
<details>
<summary style="font-size: 16px; font-weight: bold;">Documentation Fit Module</summary>
### General Fit
```python
import phitter
## Define your dataset
data: list[int | float] = [...]
## Make a continuous fit using Phitter
phi = phitter.PHITTER(data)
phi.fit()
```
### Full continuous implementation
```python
import phitter
## Define your dataset
data: list[int | float] = [...]
## Make a continuous fit using Phitter
phi = phitter.PHITTER(
data=data,
fit_type="continuous",
num_bins=15,
confidence_level=0.95,
minimum_sse=1e-2,
distributions_to_fit=["beta", "normal", "fatigue_life", "triangular"],
)
phi.fit(n_workers=6)
```
### Full discrete implementation
```python
import phitter
## Define your dataset
data: list[int | float] = [...]
## Make a discrete fit using Phitter
phi = phitter.PHITTER(
data=data,
fit_type="discrete",
confidence_level=0.95,
minimum_sse=1e-2,
distributions_to_fit=["binomial", "geometric"],
)
phi.fit(n_workers=2)
```
### Phitter: properties and methods
```python
import phitter
## Define your dataset
data: list[int | float] = [...]
## Make a fit using Phitter
phi = phitter.PHITTER(data)
phi.fit(n_workers=2)
## Global methods and properties
phi.summarize(k: int) -> pandas.DataFrame
phi.summarize_info(k: int) -> pandas.DataFrame
phi.best_distribution -> dict
phi.sorted_distributions_sse -> dict
phi.not_rejected_distributions -> dict
phi.df_sorted_distributions_sse -> pandas.DataFrame
phi.df_not_rejected_distributions -> pandas.DataFrame
## Specific distribution methods and properties
phi.get_parameters(id_distribution: str) -> dict
phi.get_test_chi_square(id_distribution: str) -> dict
phi.get_test_kolmmogorov_smirnov(id_distribution: str) -> dict
phi.get_test_anderson_darling(id_distribution: str) -> dict
phi.get_sse(id_distribution: str) -> float
phi.get_n_test_passed(id_distribution: str) -> int
phi.get_n_test_null(id_distribution: str) -> int
```
### Histogram Plot
```python
import phitter
data: list[int | float] = [...]
phi = phitter.PHITTER(data)
phi.fit()
phi.plot_histogram()
```
<img alt="phitter_histogram" src="https://github.com/phitterio/phitter-kernel/blob/main/multimedia/histogram.png?raw=true" width="500" />
### Histogram PDF Dsitributions Plot
```python
import phitter
data: list[int | float] = [...]
phi = phitter.PHITTER(data)
phi.fit()
phi.plot_histogram_distributions()
```
<img alt="phitter_histogram" src="https://github.com/phitterio/phitter-kernel/blob/main/multimedia/histogram_pdf_distributions.png?raw=true" width="500" />
### Histogram PDF Dsitribution Plot
```python
import phitter
data: list[int | float] = [...]
phi = phitter.PHITTER(data)
phi.fit()
phi.plot_distribution("beta")
```
<img alt="phitter_histogram" src="https://github.com/phitterio/phitter-kernel/blob/main/multimedia/histogram_pdf_distribution.png?raw=true" width="500" />
### ECDF Plot
```python
import phitter
data: list[int | float] = [...]
phi = phitter.PHITTER(data)
phi.fit()
phi.plot_ecdf()
```
<img alt="phitter_histogram" src="https://github.com/phitterio/phitter-kernel/blob/main/multimedia/ecdf.png?raw=true" width="500" />
### ECDF Distribution Plot
```python
import phitter
data: list[int | float] = [...]
phi = phitter.PHITTER(data)
phi.fit()
phi.plot_ecdf_distribution("beta")
```
<img alt="phitter_histogram" src="https://github.com/phitterio/phitter-kernel/blob/main/multimedia/ecdf_distribution.png?raw=true" width="500" />
### QQ Plot
```python
import phitter
data: list[int | float] = [...]
phi = phitter.PHITTER(data)
phi.fit()
phi.qq_plot("beta")
```
<img alt="phitter_histogram" src="https://github.com/phitterio/phitter-kernel/blob/main/multimedia/qq_plot_distribution.png?raw=true" width="500" />
### QQ - Regression Plot
```python
import phitter
data: list[int | float] = [...]
phi = phitter.PHITTER(data)
phi.fit()
phi.qq_plot_regression("beta")
```
<img alt="phitter_histogram" src="https://github.com/phitterio/phitter-kernel/blob/main/multimedia/qq_plot_distribution_regression.png?raw=true" width="500" />
### Working with distributions: Methods and properties
```python
import phitter
distribution = phitter.continuous.BETA({"alpha": 5, "beta": 3, "A": 200, "B": 1000})
## CDF, PDF, PPF, PMF receive float or numpy.ndarray. For discrete distributions PMF instead of PDF. Parameters notation are in description of ditribution
distribution.cdf(752) # -> 0.6242831129533498
distribution.pdf(388) # -> 0.0002342575686629883
distribution.ppf(0.623) # -> 751.5512889417921
distribution.sample(2) # -> [550.800114 514.85410326]
## STATS
distribution.mean # -> 700.0
distribution.variance # -> 16666.666666666668
distribution.standard_deviation # -> 129.09944487358058
distribution.skewness # -> -0.3098386676965934
distribution.kurtosis # -> 2.5854545454545454
distribution.median # -> 708.707130841534
distribution.mode # -> 733.3333333333333
```
## Continuous Distributions
#### [1. PDF File Documentation Continuous Distributions](https://github.com/phitterio/phitter-kernel/blob/main/distributions_documentation/continuous/document_continuous_distributions/phitter_continuous_distributions.pdf)
#### 2. Resources Continuous Distributions
| Distribution | Phitter Playground | Excel File | Google Sheets Files |
| :------------------------ | :----------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------- |
| alpha | ▶️[phitter:alpha](https://phitter.io/distributions/continuous/alpha) | 📊[alpha.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/alpha.xlsx) | 🌐[gs:alpha](https://docs.google.com/spreadsheets/d/1yRovxx1YbqgEul65DjjXetysc_4qgX2a_2NQQA1AxCA) |
| arcsine | ▶️[phitter:arcsine](https://phitter.io/distributions/continuous/arcsine) | 📊[arcsine.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/arcsine.xlsx) | 🌐[gs:arcsine](https://docs.google.com/spreadsheets/d/1q8SKX4gmSbpGzimRvjopzaZ4KrEV5NY1EPmf1G1T7NQ) |
| argus | ▶️[phitter:argus](https://phitter.io/distributions/continuous/argus) | 📊[argus.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/argus.xlsx) | 🌐[gs:argus](https://docs.google.com/spreadsheets/d/1u2x7IFUSB7rEyhs7s6-C2btT1Bk5aCr4WiUYEML-8xs) |
| beta | ▶️[phitter:beta](https://phitter.io/distributions/continuous/beta) | 📊[beta.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/beta.xlsx) | 🌐[gs:beta](https://docs.google.com/spreadsheets/d/1P7NDy-9toV3dv64gabnr8l2NjB1xt_Ani5IVMTx3gyU) |
| beta_prime | ▶️[phitter:beta_prime](https://phitter.io/distributions/continuous/beta_prime) | 📊[beta_prime.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/beta_prime.xlsx) | 🌐[gs:beta_prime](https://docs.google.com/spreadsheets/d/1-8cKeS9D6YixQE_uLig7UarXcoQoE-341yHDj8sfXA8) |
| beta_prime_4p | ▶️[phitter:beta_prime_4p](https://phitter.io/distributions/continuous/beta_prime_4p) | 📊[beta_prime_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/beta_prime_4p.xlsx) | 🌐[gs:beta_prime_4p](https://docs.google.com/spreadsheets/d/1vlaZrj_jX9oNGwjW0o4Z1AUTuUTGE8Z-Akis_wb7Jq4) |
| bradford | ▶️[phitter:bradford](https://phitter.io/distributions/continuous/bradford) | 📊[bradford.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/bradford.xlsx) | 🌐[gs:bradford](https://docs.google.com/spreadsheets/d/1kI8b05IXur3I9SUJdrbYIdv7zMdzVxVGPWx6sK6YmuU) |
| burr | ▶️[phitter:burr](https://phitter.io/distributions/continuous/burr) | 📊[burr.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/burr.xlsx) | 🌐[gs:burr](https://docs.google.com/spreadsheets/d/1vhY3l3VAgBj9BQT1yE3meRTmEZP3HXjjm30nxDKCwCI) |
| burr_4p | ▶️[phitter:burr_4p](https://phitter.io/distributions/continuous/burr_4p) | 📊[burr_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/burr_4p.xlsx) | 🌐[gs:burr_4p](https://docs.google.com/spreadsheets/d/1tEk3O2yvANj_PlLqACuwvRSqYYGQVRFH1SPMdLGYnz4) |
| cauchy | ▶️[phitter:cauchy](https://phitter.io/distributions/continuous/cauchy) | 📊[cauchy.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/cauchy.xlsx) | 🌐[gs:cauchy](https://docs.google.com/spreadsheets/d/1xoJJvuSvfg-umC7Ogio9fde1l4TiWuAlR2IxucYK0y8) |
| chi_square | ▶️[phitter:chi_square](https://phitter.io/distributions/continuous/chi_square) | 📊[chi_square.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/chi_square.xlsx) | 🌐[gs:chi_square](https://docs.google.com/spreadsheets/d/1VatJuUON_2qghjPEYMdcjGE7TYbYqduzgdYe5YNyVf4) |
| chi_square_3p | ▶️[phitter:chi_square_3p](https://phitter.io/distributions/continuous/chi_square_3p) | 📊[chi_square_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/chi_square_3p.xlsx) | 🌐[gs:chi_square_3p](https://docs.google.com/spreadsheets/d/15tf3ZKbEgR3JWQRbMT2OaNij3INTGGUuNsR01NCDFJw) |
| dagum | ▶️[phitter:dagum](https://phitter.io/distributions/continuous/dagum) | 📊[dagum.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/dagum.xlsx) | 🌐[gs:dagum](https://docs.google.com/spreadsheets/d/1qct7LByxY_z2-Rl-pWFG1LQsUxW8VQaCgLizn93YPxk) |
| dagum_4p | ▶️[phitter:dagum_4p](https://phitter.io/distributions/continuous/dagum_4p) | 📊[dagum_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/dagum_4p.xlsx) | 🌐[gs:dagum_4p](https://docs.google.com/spreadsheets/d/1ZkKqvVdy7CvhvXwK830F6GWJrdNxoXBxJYeFD6XC2DM) |
| erlang | ▶️[phitter:erlang](https://phitter.io/distributions/continuous/erlang) | 📊[erlang.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/erlang.xlsx) | 🌐[gs:erlang](https://docs.google.com/spreadsheets/d/1uG3Otntnm3cvMSkhkEiBVKuFn1pCLSWmiCxfN01D824) |
| erlang_3p | ▶️[phitter:erlang_3p](https://phitter.io/distributions/continuous/erlang_3p) | 📊[erlang_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/erlang_3p.xlsx) | 🌐[gs:erlang_3p](https://docs.google.com/spreadsheets/d/1EvFPyOAL-TPQyNf7sAXfqgHqap8sGynH0XxrLRVP12M) |
| error_function | ▶️[phitter:error_function](https://phitter.io/distributions/continuous/error_function) | 📊[error_function.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/error_function.xlsx) | 🌐[gs:error_function](https://docs.google.com/spreadsheets/d/1QT1vSgTWVgDmNz4FrH3fhwRGpgvPohgqZSCADHfBXkM) |
| exponential | ▶️[phitter:exponential](https://phitter.io/distributions/continuous/exponential) | 📊[exponential.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/exponential.xlsx) | 🌐[gs:exponential](https://docs.google.com/spreadsheets/d/1c8aCgHTq3fEyIkVM1Ph3fzebxQMuourz1UkWbH4h3HA) |
| exponential_2p | ▶️[phitter:exponential_2p](https://phitter.io/distributions/continuous/exponential_2p) | 📊[exponential_2p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/exponential_2p.xlsx) | 🌐[gs:exponential_2p](https://docs.google.com/spreadsheets/d/1XtrdS8iSCM1l33rbaXSz1uWZ3vnQsYPK-07NYE-ZYBs) |
| f | ▶️[phitter:f](https://phitter.io/distributions/continuous/f) | 📊[f.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/f.xlsx) | 🌐[gs:f](https://docs.google.com/spreadsheets/d/137gYI8B6MDnqFoQ4bY1crdpFSKtPzRgaJS564SY_CUY) |
| f_4p | ▶️[phitter:f_4p](https://phitter.io/distributions/continuous/f_4p) | 📊[f_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/f_4p.xlsx) | 🌐[gs:f_4p](https://docs.google.com/spreadsheets/d/11MgyMqzOyGNtFLdGviRTeNhAQMYBCJ8QRMHGxoPCzwM) |
| fatigue_life | ▶️[phitter:fatigue_life](https://phitter.io/distributions/continuous/fatigue_life) | 📊[fatigue_life.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/fatigue_life.xlsx) | 🌐[gs:fatigue_life](https://docs.google.com/spreadsheets/d/1j-U_YMX89VHe2jVq3pazpzqYeA1j1zopW22C9yJcPS0) |
| folded_normal | ▶️[phitter:folded_normal](https://phitter.io/distributions/continuous/folded_normal) | 📊[folded_normal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/folded_normal.xlsx) | 🌐[gs:folded_normal](https://docs.google.com/spreadsheets/d/17NlSnru_46J8pSjxMPLDlzxoG2fPKWjeFvTh0ydfX4k) |
| frechet | ▶️[phitter:frechet](https://phitter.io/distributions/continuous/frechet) | 📊[frechet.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/frechet.xlsx) | 🌐[gs:frechet](https://docs.google.com/spreadsheets/d/1PNGvHImwOFIragM_hHrQJcTN7OcqCKFoHKXlPq76fnI) |
| gamma | ▶️[phitter:gamma](https://phitter.io/distributions/continuous/gamma) | 📊[gamma.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gamma.xlsx) | 🌐[gs:gamma](https://docs.google.com/spreadsheets/d/1HgD3a1zOml7Hy9PMVvFwQwrbmbs8iPbH-zQMowH0LVE) |
| gamma_3p | ▶️[phitter:gamma_3p](https://phitter.io/distributions/continuous/gamma_3p) | 📊[gamma_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gamma_3p.xlsx) | 🌐[gs:gamma_3p](https://docs.google.com/spreadsheets/d/1NkyFZFOMzk2V9qkFEI_zhGUGWiGV-K9vU-RLaFB7ip8) |
| generalized_extreme_value | ▶️[phitter:gen_extreme_value](https://phitter.io/distributions/continuous/generalized_extreme_value) | 📊[gen_extreme_value.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_extreme_value.xlsx) | 🌐[gs:gen_extreme_value](https://docs.google.com/spreadsheets/d/19qHvnTJGVVZ7zhi-yhauCOGhu0iAdkYJ5FFgwv1q5OI) |
| generalized_gamma | ▶️[phitter:gen_gamma](https://phitter.io/distributions/continuous/generalized_gamma) | 📊[gen_gamma.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_gamma.xlsx) | 🌐[gs:gen_gamma](https://docs.google.com/spreadsheets/d/1xx8b_VSG4jznZzaKq2yKumw5VcNX5Wj86YqLO7n4S5A) |
| generalized_gamma_4p | ▶️[phitter:gen_gamma_4p](https://phitter.io/distributions/continuous/generalized_gamma_4p) | 📊[gen_gamma_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_gamma_4p.xlsx) | 🌐[gs:gen_gamma_4p](https://docs.google.com/spreadsheets/d/1TN72MSkZ2bRyoNy29h4VIxFudXAroSi1PnmFijPvO0M) |
| generalized_logistic | ▶️[phitter:gen_logistic](https://phitter.io/distributions/continuous/generalized_logistic) | 📊[gen_logistic.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_logistic.xlsx) | 🌐[gs:gen_logistic](https://docs.google.com/spreadsheets/d/1vwppGjHbwEA3xd3OtV51sPZhpOWyzmPIOV_Tued-I1Y) |
| generalized_normal | ▶️[phitter:gen_normal](https://phitter.io/distributions/continuous/generalized_normal) | 📊[gen_normal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_normal.xlsx) | 🌐[gs:gen_normal](https://docs.google.com/spreadsheets/d/1_77JSp0mhHxqvQugVRRWIoQOTa91WdyNqNmOfDNuSfA) |
| generalized_pareto | ▶️[phitter:gen_pareto](https://phitter.io/distributions/continuous/generalized_pareto) | 📊[gen_pareto.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_pareto.xlsx) | 🌐[gs:gen_pareto](https://docs.google.com/spreadsheets/d/1E28WYhX4Ba9Nj-JNxqAm-Gh7o1EOOIOwXIdCFl1PXI0) |
| gibrat | ▶️[phitter:gibrat](https://phitter.io/distributions/continuous/gibrat) | 📊[gibrat.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gibrat.xlsx) | 🌐[gs:gibrat](https://docs.google.com/spreadsheets/d/1pM7skBPnH8V3GCJo0iSst46Oc2OzqWdX2qATYBqc_GQ) |
| gumbel_left | ▶️[phitter:gumbel_left](https://phitter.io/distributions/continuous/gumbel_left) | 📊[gumbel_left.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gumbel_left.xlsx) | 🌐[gs:gumbel_left](https://docs.google.com/spreadsheets/d/1WoW97haebsHk1sB8smC4Zq8KqW8leJY0bPK757B2IdI) |
| gumbel_right | ▶️[phitter:gumbel_right](https://phitter.io/distributions/continuous/gumbel_right) | 📊[gumbel_right.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gumbel_right.xlsx) | 🌐[gs:gumbel_right](https://docs.google.com/spreadsheets/d/1CpzfSwAdptFrI8DhV3tWRsEFd9cr6h3Jaj7t3gigims) |
| half_normal | ▶️[phitter:half_normal](https://phitter.io/distributions/continuous/half_normal) | 📊[half_normal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/half_normal.xlsx) | 🌐[gs:half_normal](https://docs.google.com/spreadsheets/d/1HQpNSNIhZPzMQvWWKyShnYNH74d1Bhs_d6k9La52V9M) |
| hyperbolic_secant | ▶️[phitter:hyperbolic_secant](https://phitter.io/distributions/continuous/hyperbolic_secant) | 📊[hyperbolic_secant.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/hyperbolic_secant.xlsx) | 🌐[gs:hyperbolic_secant](https://docs.google.com/spreadsheets/d/1lTcLlwX0fmgUjhT4ljvKL_dqSReK_lEthsZNBtDxAF8) |
| inverse_gamma | ▶️[phitter:inverse_gamma](https://phitter.io/distributions/continuous/inverse_gamma) | 📊[inverse_gamma.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/inverse_gamma.xlsx) | 🌐[gs:inverse_gamma](https://docs.google.com/spreadsheets/d/1uOgfUvhBHKAXhbYATUwdHRQnBMIMnu6rWecqKx6MoIA) |
| inverse_gamma_3p | ▶️[phitter:inverse_gamma_3p](https://phitter.io/distributions/continuous/inverse_gamma_3p) | 📊[inverse_gamma_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/inverse_gamma_3p.xlsx) | 🌐[gs:inverse_gamma_3p](https://docs.google.com/spreadsheets/d/16LCC6j_j1Cm7stc7LEd-C0ObUcZ-agL51ALGYxoZtrI) |
| inverse_gaussian | ▶️[phitter:inverse_gaussian](https://phitter.io/distributions/continuous/inverse_gaussian) | 📊[inverse_gaussian.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/inverse_gaussian.xlsx) | 🌐[gs:inverse_gaussian](https://docs.google.com/spreadsheets/d/10LaEnmnRxNESViLTlw6FDyt1YSWNbMlBXaWc9t4q5qA) |
| inverse_gaussian_3p | ▶️[phitter:inverse_gaussian_3p](https://phitter.io/distributions/continuous/inverse_gaussian_3p) | 📊[inverse_gaussian_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/inverse_gaussian_3p.xlsx) | 🌐[gs:inverse_gaussian_3p](https://docs.google.com/spreadsheets/d/1wkcSlXnUdMe4by2N9nPA_Cdsz3D0kHL7MVchsjl_CTQ) |
| johnson_sb | ▶️[phitter:johnson_sb](https://phitter.io/distributions/continuous/johnson_sb) | 📊[johnson_sb.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/johnson_sb.xlsx) | 🌐[gs:johnson_sb](https://docs.google.com/spreadsheets/d/1H3bpJd729k0VK3LtvgxvKJiduIdP04UkHhgJoq4ayHQ) |
| johnson_su | ▶️[phitter:johnson_su](https://phitter.io/distributions/continuous/johnson_su) | 📊[johnson_su.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/johnson_su.xlsx) | 🌐[gs:johnson_su](https://docs.google.com/spreadsheets/d/15kw_NZr3RFjN9orvF844ITWXroWRsCFkY7Uvq0NZ4K8) |
| kumaraswamy | ▶️[phitter:kumaraswamy](https://phitter.io/distributions/continuous/kumaraswamy) | 📊[kumaraswamy.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/kumaraswamy.xlsx) | 🌐[gs:kumaraswamy](https://docs.google.com/spreadsheets/d/10YJUDlAEygfOn07YxHBJxDqiXxygv8jKpJ8WvCZhe84) |
| laplace | ▶️[phitter:laplace](https://phitter.io/distributions/continuous/laplace) | 📊[laplace.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/laplace.xlsx) | 🌐[gs:laplace](https://docs.google.com/spreadsheets/d/110gPFTHOnQqecbXrjq3Wqv52I5Cw93UjL7eoSVC1DIs) |
| levy | ▶️[phitter:levy](https://phitter.io/distributions/continuous/levy) | 📊[levy.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/levy.xlsx) | 🌐[gs:levy](https://docs.google.com/spreadsheets/d/1OIA4C6iqhwK0Y17wb_O5ce9YXy4JIBf1yq3TqcmDp3U) |
| loggamma | ▶️[phitter:loggamma](https://phitter.io/distributions/continuous/loggamma) | 📊[loggamma.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/loggamma.xlsx) | 🌐[gs:loggamma](https://docs.google.com/spreadsheets/d/1SXCmxXs7hkajo_W_qL-e0MJQEaUJqTpUno1nYGXxmxI) |
| logistic | ▶️[phitter:logistic](https://phitter.io/distributions/continuous/logistic) | 📊[logistic.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/logistic.xlsx) | 🌐[gs:logistic](https://docs.google.com/spreadsheets/d/1WokfLcAM2f2TE9xcZwwuy3qjl4itw-y0cwAb7fyKxb0) |
| loglogistic | ▶️[phitter:loglogistic](https://phitter.io/distributions/continuous/loglogistic) | 📊[loglogistic.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/loglogistic.xlsx) | 🌐[gs:loglogistic](https://docs.google.com/spreadsheets/d/1WWXRuI6AP9n_n47ikOHWUjkfCYUOQgzhDjRsKBKEHXA) |
| loglogistic_3p | ▶️[phitter:loglogistic_3p](https://phitter.io/distributions/continuous/loglogistic_3p) | 📊[loglogistic_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/loglogistic_3p.xlsx) | 🌐[gs:loglogistic_3p](https://docs.google.com/spreadsheets/d/1RaLZ5L0rTrv9_fAi6izElf02ucuFy9LwagL_gQn3R0Y) |
| lognormal | ▶️[phitter:lognormal](https://phitter.io/distributions/continuous/lognormal) | 📊[lognormal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/lognormal.xlsx) | 🌐[gs:lognormal](https://docs.google.com/spreadsheets/d/1lS1cR4C2R45ug0ZyLxBlRBtcXH6hNPE1L-5wP68gUpA) |
| maxwell | ▶️[phitter:maxwell](https://phitter.io/distributions/continuous/maxwell) | 📊[maxwell.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/maxwell.xlsx) | 🌐[gs:maxwell](https://docs.google.com/spreadsheets/d/15tPw2RM2_a0vJMjVwNgsJnJUKFk9xbcEALqOf1m5qH0) |
| moyal | ▶️[phitter:moyal](https://phitter.io/distributions/continuous/moyal) | 📊[moyal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/moyal.xlsx) | 🌐[gs:moyal](https://docs.google.com/spreadsheets/d/1_58zWuk_-wSEesJbCc2FTHxv4HO5WouGwlStIZitt1I) |
| nakagami | ▶️[phitter:nakagami](https://phitter.io/distributions/continuous/nakagami) | 📊[nakagami.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/nakagami.xlsx) | 🌐[gs:nakagami](https://docs.google.com/spreadsheets/d/1fY8ID5gz1R6oWFm4w91GFdQMCd0wJ5ZRgfWi-yQtGqs) |
| non_central_chi_square | ▶️[phitter:non_central_chi_square](https://phitter.io/distributions/continuous/non_central_chi_square) | 📊[non_central_chi_square.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/non_central_chi_square.xlsx) | 🌐[gs:non_central_chi_square](https://docs.google.com/spreadsheets/d/17KWXPKOuMfTG0w4Gqe3lU3vWY2e9k31AX22PXTzOrFk) |
| non_central_f | ▶️[phitter:non_central_f](https://phitter.io/distributions/continuous/non_central_f) | 📊[non_central_f.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/non_central_f.xlsx) | 🌐[gs:non_central_f](https://docs.google.com/spreadsheets/d/14mZ563hIw2vXNM89DUncpsOdGgBXEUIIxJNa3-MVNIM) |
| non_central_t_student | ▶️[phitter:non_central_t_student](https://phitter.io/distributions/continuous/non_central_t_student) | 📊[non_central_t_student.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/non_central_t_student.xlsx) | 🌐[gs:non_central_t_student](https://docs.google.com/spreadsheets/d/1u8pseBDM3brw0AXlru1cprOsfQuHMWfvfDbz2XxKoOY) |
| normal | ▶️[phitter:normal](https://phitter.io/distributions/continuous/normal) | 📊[normal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/normal.xlsx) | 🌐[gs:normal](https://docs.google.com/spreadsheets/d/18QTB3YYprvdFhr6PJI-DFcZOnYAuffdH8JHOtH1f83I) |
| pareto_first_kind | ▶️[phitter:pareto_first_kind](https://phitter.io/distributions/continuous/pareto_first_kind) | 📊[pareto_first_kind.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/pareto_first_kind.xlsx) | 🌐[gs:pareto_first_kind](https://docs.google.com/spreadsheets/d/1T-Sjp0yCxbJpP9njbovOiFpbP8PrwI5jlj66odxAw5E) |
| pareto_second_kind | ▶️[phitter:pareto_second_kind](https://phitter.io/distributions/continuous/pareto_second_kind) | 📊[pareto_second_kind.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/pareto_second_kind.xlsx) | 🌐[gs:pareto_second_kind](https://docs.google.com/spreadsheets/d/1hnBOqkbcRNuyRxaLP8eHei5MRwUFDb1bgdcZYkpYKio) |
| pert | ▶️[phitter:pert](https://phitter.io/distributions/continuous/pert) | 📊[pert.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/pert.xlsx) | 🌐[gs:pert](https://docs.google.com/spreadsheets/d/1NeKJKq4D_BB-ouefgJ35FzcORA7fH1OQwC5dCZKI_38) |
| power_function | ▶️[phitter:power_function](https://phitter.io/distributions/continuous/power_function) | 📊[power_function.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/power_function.xlsx) | 🌐[gs:power_function](https://docs.google.com/spreadsheets/d/1Hbi-XZiCK--JGFnoY-8iDLmNgYclDo5L4LKYKCCxfzw) |
| rayleigh | ▶️[phitter:rayleigh](https://phitter.io/distributions/continuous/rayleigh) | 📊[rayleigh.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/rayleigh.xlsx) | 🌐[gs:rayleigh](https://docs.google.com/spreadsheets/d/1UWtjOwokob4x43OcMLLFbNTYUqOo5dJWqSTfWbS-yyw) |
| reciprocal | ▶️[phitter:reciprocal](https://phitter.io/distributions/continuous/reciprocal) | 📊[reciprocal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/reciprocal.xlsx) | 🌐[gs:reciprocal](https://docs.google.com/spreadsheets/d/1ghFeCj8Q_hbpWqv9xXaNl1UKUe-5kOomZPWyI1JsoGA) |
| rice | ▶️[phitter:rice](https://phitter.io/distributions/continuous/rice) | 📊[rice.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/rice.xlsx) | 🌐[gs:rice](https://docs.google.com/spreadsheets/d/1hGVFWbF0w7D0l54t_p0vUId0rO2s61BRdrgslDYTnWc) |
| semicircular | ▶️[phitter:semicircular](https://phitter.io/distributions/continuous/semicircular) | 📊[semicircular.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/semicircular.xlsx) | 🌐[gs:semicircular](https://docs.google.com/spreadsheets/d/195c9VbAKtvEndJKnFp52TrENYK2iytMzIXLMKFAGgx4) |
| t_student | ▶️[phitter:t_student](https://phitter.io/distributions/continuous/t_student) | 📊[t_student.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/t_student.xlsx) | 🌐[gs:t_student](https://docs.google.com/spreadsheets/d/1fGxJfFL5eXAWk8xNI6HgCX9SQuXi-m5mR83N1dMLJrg) |
| t_student_3p | ▶️[phitter:t_student_3p](https://phitter.io/distributions/continuous/t_student_3p) | 📊[t_student_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/t_student_3p.xlsx) | 🌐[gs:t_student_3p](https://docs.google.com/spreadsheets/d/1K8bpbc-0mwe0mvRYXUQmoE8vaTigciJWDS4CPXmJodU) |
| trapezoidal | ▶️[phitter:trapezoidal](https://phitter.io/distributions/continuous/trapezoidal) | 📊[trapezoidal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/trapezoidal.xlsx) | 🌐[gs:trapezoidal](https://docs.google.com/spreadsheets/d/1Gsk5M_R2q9Or8RTggKtTkqEk-cN6IuDgYqbmhFm5Xlw) |
| triangular | ▶️[phitter:triangular](https://phitter.io/distributions/continuous/triangular) | 📊[triangular.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/triangular.xlsx) | 🌐[gs:triangular](https://docs.google.com/spreadsheets/d/1nirKOt7O7rUf2nlYu61cnNYT91GKSzb6pVlc1-pzzGw) |
| uniform | ▶️[phitter:uniform](https://phitter.io/distributions/continuous/uniform) | 📊[uniform.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/uniform.xlsx) | 🌐[gs:uniform](https://docs.google.com/spreadsheets/d/1TSaKNHOsVLYUobyKTpHR6qCuCAgfkKmRSETvdeZLcw4) |
| weibull | ▶️[phitter:weibull](https://phitter.io/distributions/continuous/weibull) | 📊[weibull.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/weibull.xlsx) | 🌐[gs:weibull](https://docs.google.com/spreadsheets/d/1DdNwWHmu0PZAhMYf475EMU3scTMXok3wOhzsg7gn8Ek) |
| weibull_3p | ▶️[phitter:weibull_3p](https://phitter.io/distributions/continuous/weibull_3p) | 📊[weibull_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/weibull_3p.xlsx) | 🌐[gs:weibull_3p](https://docs.google.com/spreadsheets/d/1agwpFGpXm62srDxgPOoDQGN8nGd8zaoztXg84Bgedlo) |
## Discrete Distributions
#### [1. PDF File Documentation Discrete Distributions](https://github.com/phitterio/phitter-kernel/blob/main/distributions_documentation/discrete/document_discrete_distributions/phitter_discrete_distributions.pdf)
#### 2. Resources Discrete Distributions
| Distribution | Phitter Playground | Excel File | Google Sheets Files |
| :---------------- | :------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------ |
| bernoulli | ▶️[phitter:bernoulli](https://phitter.io/distributions/continuous/bernoulli) | 📊[bernoulli.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/bernoulli.xlsx) | 🌐[gs:bernoulli](https://docs.google.com/spreadsheets/d/1sWJZYZWW8cVLFXYV-fb3Lq4y2YgWzgTGWHfhIJ0zM5c) |
| binomial | ▶️[phitter:binomial](https://phitter.io/distributions/continuous/binomial) | 📊[binomial.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/binomial.xlsx) | 🌐[gs:binomial](https://docs.google.com/spreadsheets/d/1bPOiZVUhjLMmbFqVjWMqg1NzTvsZxVIw95fi5hIhkn0) |
| geometric | ▶️[phitter:geometric](https://phitter.io/distributions/continuous/geometric) | 📊[geometric.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/geometric.xlsx) | 🌐[gs:geometric](https://docs.google.com/spreadsheets/d/1cEU6n8UxpJ_Had6WfFnAXZ2FcaLGYu8g5srQ_iEfjgg) |
| hypergeometric | ▶️[phitter:hypergeometric](https://phitter.io/distributions/continuous/hypergeometric) | 📊[hypergeometric.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/hypergeometric.xlsx) | 🌐[gs:hypergeometric](https://docs.google.com/spreadsheets/d/10xUqKVoFzUiukuYt6VFwlaetMDTdGulHQPEWl1rJiMA) |
| logarithmic | ▶️[phitter:logarithmic](https://phitter.io/distributions/continuous/logarithmic) | 📊[logarithmic.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/logarithmic.xlsx) | 🌐[gs:logarithmic](https://docs.google.com/spreadsheets/d/1N-YXrSfOYkPKwerL5I1QmfxuwbZzVUzgBWTcKzcmLhE) |
| negative_binomial | ▶️[phitter:negative_binomial](https://phitter.io/distributions/continuous/negative_binomial) | 📊[negative_binomial.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/negative_binomial.xlsx) | 🌐[gs:negative_binomial](https://docs.google.com/spreadsheets/d/1xmCWBiswdW5s7SIhwT2nrdQxLFAb6hw73iy52_nvjQE) |
| poisson | ▶️[phitter:poisson](https://phitter.io/distributions/continuous/poisson) | 📊[poisson.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/poisson.xlsx) | 🌐[gs:poisson](https://docs.google.com/spreadsheets/d/1fwoe70JH5Ve6sETb7AwBdb4eep_h2DeGlpHIWcHeZA8) |
| uniform | ▶️[phitter:uniform](https://phitter.io/distributions/continuous/uniform) | 📊[uniform.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/uniform.xlsx) | 🌐[gs:uniform](https://docs.google.com/spreadsheets/d/1Ahl2ugOKkUCVWzzc_aNHwlA5Af4sHpTwqSiFIyYPsfM) |
## Benchmarks
### _Fit time continuous distributions_
| Sample Size / Workers | 1 | 2 | 6 | 10 | 20 |
| :-------------------: | :-------: | :------: | :------: | :------: | :------: |
| **1K** | 8.2981 | 7.1242 | 8.9667 | 9.9287 | 16.2246 |
| **10K** | 20.8711 | 14.2647 | 10.5612 | 11.6004 | 17.8562 |
| **100K** | 152.6296 | 97.2359 | 57.7310 | 51.6182 | 53.2313 |
| **500K** | 914.9291 | 640.8153 | 370.0323 | 267.4597 | 257.7534 |
| **1M** | 1580.8501 | 972.3985 | 573.5429 | 496.5569 | 425.7809 |
### _Estimation time parameters discrete distributions_
| Sample Size / Workers | 1 | 2 | 4 |
| :-------------------: | :-----: | :-----: | :-----: |
| **1K** | 0.1688 | 2.6402 | 2.8719 |
| **10K** | 0.4462 | 2.4452 | 3.0471 |
| **100K** | 4.5598 | 6.3246 | 7.5869 |
| **500K** | 19.0172 | 21.8047 | 19.8420 |
| **1M** | 39.8065 | 29.8360 | 30.2334 |
### _Estimation time parameters continuous distributions_
| Distribution / Sample Size | 1K | 10K | 100K | 500K | 1M | 10M |
| :------------------------: | :----: | :----: | :-----: | :-----: | :------: | :-------: |
| alpha | 0.3345 | 0.4625 | 2.5933 | 18.3856 | 39.6533 | 362.2951 |
| arcsine | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| argus | 0.0559 | 0.2050 | 2.2472 | 13.3928 | 41.5198 | 362.2472 |
| beta | 0.1880 | 0.1790 | 0.1940 | 0.2110 | 0.1800 | 0.3134 |
| beta_prime | 0.1766 | 0.7506 | 7.6039 | 40.4264 | 85.0677 | 812.1323 |
| beta_prime_4p | 0.0720 | 0.3630 | 3.9478 | 20.2703 | 40.2709 | 413.5239 |
| bradford | 0.0110 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0010 |
| burr | 0.0733 | 0.6931 | 5.5425 | 36.7684 | 79.8269 | 668.2016 |
| burr_4p | 0.1552 | 0.7981 | 8.4716 | 44.4549 | 87.7292 | 858.0035 |
| cauchy | 0.0090 | 0.0160 | 0.1581 | 1.1052 | 2.1090 | 21.5244 |
| chi_square | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| chi_square_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| dagum | 0.3381 | 0.8278 | 9.6907 | 45.5855 | 98.6691 | 917.6713 |
| dagum_4p | 0.3646 | 1.3307 | 13.3437 | 70.9462 | 140.9371 | 1396.3368 |
| erlang | 0.0010 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| erlang_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| error_function | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| exponential | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| exponential_2p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| f | 0.0592 | 0.2948 | 2.6920 | 18.9458 | 29.9547 | 402.2248 |
| fatigue_life | 0.0352 | 0.1101 | 1.7085 | 9.0090 | 20.4702 | 186.9631 |
| folded_normal | 0.0020 | 0.0020 | 0.0020 | 0.0022 | 0.0033 | 0.0040 |
| frechet | 0.1313 | 0.4359 | 5.7031 | 39.4202 | 43.2469 | 671.3343 |
| f_4p | 0.3269 | 0.7517 | 0.6183 | 0.6037 | 0.5809 | 0.2073 |
| gamma | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| gamma_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| generalized_extreme_value | 0.0833 | 0.2054 | 2.0337 | 10.3301 | 22.1340 | 243.3120 |
| generalized_gamma | 0.0298 | 0.0178 | 0.0227 | 0.0236 | 0.0170 | 0.0241 |
| generalized_gamma_4p | 0.0371 | 0.0116 | 0.0732 | 0.0725 | 0.0707 | 0.0730 |
| generalized_logistic | 0.1040 | 0.1073 | 0.1037 | 0.0819 | 0.0989 | 0.0836 |
| generalized_normal | 0.0154 | 0.0736 | 0.7367 | 2.4831 | 5.9752 | 55.2417 |
| generalized_pareto | 0.3189 | 0.8978 | 8.9370 | 51.3813 | 101.6832 | 1015.2933 |
| gibrat | 0.0328 | 0.0432 | 0.4287 | 2.7159 | 5.5721 | 54.1702 |
| gumbel_left | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0010 | 0.0010 |
| gumbel_right | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| half_normal | 0.0010 | 0.0000 | 0.0000 | 0.0010 | 0.0000 | 0.0000 |
| hyperbolic_secant | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| inverse_gamma | 0.0308 | 0.0632 | 0.7233 | 5.0127 | 10.7885 | 99.1316 |
| inverse_gamma_3p | 0.0787 | 0.1472 | 1.6513 | 11.1161 | 23.4587 | 227.6125 |
| inverse_gaussian | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| inverse_gaussian_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| johnson_sb | 0.2966 | 0.7466 | 4.0707 | 40.2028 | 56.2130 | 728.2447 |
| johnson_su | 0.0070 | 0.0010 | 0.0010 | 0.0143 | 0.0010 | 0.0010 |
| kumaraswamy | 0.0164 | 0.0120 | 0.0130 | 0.0123 | 0.0125 | 0.0150 |
| laplace | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| levy | 0.0100 | 0.0314 | 0.2296 | 1.1365 | 2.7211 | 26.4966 |
| loggamma | 0.0085 | 0.0050 | 0.0050 | 0.0070 | 0.0062 | 0.0080 |
| logistic | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| loglogistic | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| loglogistic_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| lognormal | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0010 | 0.0000 |
| maxwell | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0010 |
| moyal | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| nakagami | 0.0000 | 0.0030 | 0.0213 | 0.1215 | 0.2649 | 2.2457 |
| non_central_chi_square | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| non_central_f | 0.0190 | 0.0182 | 0.0210 | 0.0192 | 0.0190 | 0.0200 |
| non_central_t_student | 0.0874 | 0.0822 | 0.0862 | 0.1314 | 0.2516 | 0.1781 |
| normal | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| pareto_first_kind | 0.0010 | 0.0030 | 0.0390 | 0.2494 | 0.5226 | 5.5246 |
| pareto_second_kind | 0.0643 | 0.1522 | 1.1722 | 10.9871 | 23.6534 | 201.1626 |
| pert | 0.0052 | 0.0030 | 0.0030 | 0.0040 | 0.0040 | 0.0092 |
| power_function | 0.0075 | 0.0040 | 0.0040 | 0.0030 | 0.0040 | 0.0040 |
| rayleigh | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| reciprocal | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| rice | 0.0182 | 0.0030 | 0.0040 | 0.0060 | 0.0030 | 0.0050 |
| semicircular | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| trapezoidal | 0.0083 | 0.0072 | 0.0073 | 0.0060 | 0.0070 | 0.0060 |
| triangular | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| t_student | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| t_student_3p | 0.3892 | 1.1860 | 11.2759 | 71.1156 | 143.1939 | 1409.8578 |
| uniform | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| weibull | 0.0010 | 0.0000 | 0.0000 | 0.0000 | 0.0010 | 0.0010 |
| weibull_3p | 0.0061 | 0.0040 | 0.0030 | 0.0040 | 0.0050 | 0.0050 |
### _Estimation time parameters discrete distributions_
| Distribution / Sample Size | 1K | 10K | 100K | 500K | 1M | 10M |
| :------------------------: | :----: | :----: | :----: | :----: | :----: | :----: |
| bernoulli | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| binomial | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| geometric | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| hypergeometric | 0.0773 | 0.0061 | 0.0030 | 0.0020 | 0.0030 | 0.0051 |
| logarithmic | 0.0210 | 0.0035 | 0.0171 | 0.0050 | 0.0030 | 0.0756 |
| negative_binomial | 0.0293 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| poisson | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| uniform | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
</details>
<details>
<summary style="font-size: 16px; font-weight: bold;">Documentation Simulation Module</summary>
## Process Simulation
This will help you to understand your processes. To use it, run the following line
```python
from phitter import simulation
# Create a simulation process instance
simulation = simulation.ProcessSimulation()
```
### Add processes to your simulation instance
There are two ways to add processes to your simulation instance:
- Adding a **process _without_ preceding process (new branch)**
- Adding a **process _with_ preceding process (with previous ids)**
#### Process _without_ preceding process (new branch)
```python
# Add a new process without preceding process
simulation.add_process(
prob_distribution="normal",
parameters={"mu": 5, "sigma": 2},
process_id="first_process",
number_of_products=10,
number_of_servers=3,
new_branch=True,
)
```
#### Process _with_ preceding process (with previous ids)
```python
# Add a new process with preceding process
simulation.add_process(
prob_distribution="exponential",
parameters={"lambda": 4},
process_id="second_process",
previous_ids=["first_process"],
)
```
#### All together and adding some new process
The order in which you add each process **_matters_**. You can add as many processes as you need.
```python
# Add a new process without preceding process
simulation.add_process(
prob_distribution="normal",
parameters={"mu": 5, "sigma": 2},
process_id="first_process",
number_of_products=10,
number_of_servers=3,
new_branch=True,
)
# Add a new process with preceding process
simulation.add_process(
prob_distribution="exponential",
parameters={"lambda": 4},
process_id="second_process",
previous_ids=["first_process"],
)
# Add a new process with preceding process
simulation.add_process(
prob_distribution="gamma",
parameters={"alpha": 15, "beta": 3},
process_id="third_process",
previous_ids=["first_process"],
)
# Add a new process without preceding process
simulation.add_process(
prob_distribution="exponential",
parameters={"lambda": 4.3},
process_id="fourth_process",
new_branch=True,
)
# Add a new process with preceding process
simulation.add_process(
prob_distribution="beta",
parameters={"alpha": 1, "beta": 1, "A": 2, "B": 3},
process_id="fifth_process",
previous_ids=["second_process", "fourth_process"],
)
# Add a new process with preceding process
simulation.add_process(
prob_distribution="normal",
parameters={"mu": 15, "sigma": 2},
process_id="sixth_process",
previous_ids=["third_process", "fifth_process"],
)
```
### Visualize your processes
You can visualize your processes to see if what you're trying to simulate is your actual process.
```python
# Graph your process
simulation.process_graph()
```
![Simulation](./multimedia/simulation_process_graph.png)
### Start Simulation
You can simulate and have different simulation time values or you can create a confidence interval for your process
#### Run Simulation
Simulate several scenarios of your complete process
```python
# Run Simulation
simulation.run(number_of_simulations=100)
# After run
simulation: pandas.Dataframe
```
### Review Simulation Metrics by Stage
If you want to review average time and standard deviation by stage run this line of code
```python
# Review simulation metrics
simulation.simulation_metrics() -> pandas.Dataframe
```
#### Run confidence interval
If you want to have a confidence interval for the simulation metrics, run the following line of code
```python
# Confidence interval for Simulation metrics
simulation.run_confidence_interval(
confidence_level=0.99,
number_of_simulations=100,
replications=10,
) -> pandas.Dataframe
```
## Queue Simulation
If you need to simulate queues run the following code:
```python
from phitter import simulation
# Create a simulation process instance
simulation = simulation.QueueingSimulation(
a="exponential",
a_paramters={"lambda": 5},
s="exponential",
s_parameters={"lambda": 20},
c=3,
)
```
In this case we are going to simulate **a** (arrivals) with _exponential distribution_ and **s** (service) as _exponential distribution_ with **c** equals to 3 different servers.
By default Maximum Capacity **k** is _infinity_, total population **n** is _infinity_ and the queue discipline **d** is _FIFO_. As we are not selecting **d** equals to "PBS" we don't have any information to add for **pbs_distribution** nor **pbs_parameters**
### Run the simulation
If you want to have the simulation results
```python
# Run simulation
simulation = simulation.run(simulation_time = 2000)
simulation: pandas.Dataframe
```
If you want to see some metrics and probabilities from this simulation you should use::
```python
# Calculate metrics
simulation.metrics_summary() -> pandas.Dataframe
# Calculate probabilities
number_probability_summary() -> pandas.Dataframe
```
### Run Confidence Interval for metrics and probabilities
If you want to have a confidence interval for your metrics and probabilities you should run the following line
```python
# Calculate confidence interval for metrics and probabilities
probabilities, metrics = simulation.confidence_interval_metrics(
simulation_time=2000,
confidence_level=0.99,
replications=10,
)
probabilities -> pandas.Dataframe
metrics -> pandas.Dataframe
```
</details>
## Contribution
If you would like to contribute to the Phitter project, please create a pull request with your proposed changes or enhancements. All contributions are welcome!
Raw data
{
"_id": null,
"home_page": null,
"name": "phitter",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "scientific, engineering, mathematics, artificial intelligence, software development, python modules",
"author": null,
"author_email": "Sebasti\u00e1n Jos\u00e9 Herrera Monterrosa <phitter.email@gmail.com>, Carlos Andr\u00e9s M\u00e1smela Pinilla <phitter.email@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/e0/98/aeef6f51ece0d22ef4f12cb998bcd688b6c5bd89df69c2eacd11eb87377a/phitter-1.0.0.tar.gz",
"platform": null,
"description": "<p align=\"center\">\r\n <picture>\r\n <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://gist.githubusercontent.com/phitterio/66bc7f3674eac01ae646e30ba697a6d7/raw/e96dbba0eb26b20d35e608fefc3984bd87f0010b/DarkPhitterLogo.svg\" width=\"350\">\r\n <source media=\"(prefers-color-scheme: light)\" srcset=\"https://gist.githubusercontent.com/phitterio/170ce460d7e766545265772525edecf6/raw/71b4867c6e5683455cf1d68bea5bea7eda55ce7d/LightPhitterLogo.svg\" width=\"350\">\r\n <img alt=\"phitter-dark-logo\" src=\"https://gist.githubusercontent.com/phitterio/170ce460d7e766545265772525edecf6/raw/71b4867c6e5683455cf1d68bea5bea7eda55ce7d/LightPhitterLogo.svg\" width=\"350\">\r\n </picture>\r\n</p>\r\n\r\n<p align=\"center\">\r\n <a href=\"https://pypi.org/project/phitter\" target=\"_blank\">\r\n <img src=\"https://img.shields.io/pypi/dm/phitter.svg?color=blue\" alt=\"Downloads\">\r\n </a>\r\n <a href=\"https://pypi.org/project/phitter\" target=\"_blank\">\r\n <img src=\"https://img.shields.io/badge/License-MIT-blue.svg\" alt=\"License\">\r\n </a>\r\n <a href=\"https://pypi.org/project/phitter\" target=\"_blank\">\r\n <img src=\"https://img.shields.io/pypi/pyversions/phitter?color=blue\" alt=\"Supported Python versions\">\r\n </a>\r\n <a href=\"https://github.com/phitterio/phitter-kernel/actions/workflows/unittest.yml\" target=\"_blank\">\r\n <img src=\"https://github.com/phitterio/phitter-kernel/actions/workflows/unittest.yml/badge.svg\" alt=\"Tests\">\r\n </a>\r\n</p>\r\n\r\n<p>\r\n Phitter analyzes datasets and determines the best analytical probability distributions that represent them. Phitter studies over 80 probability distributions, both continuous and discrete, 3 goodness-of-fit tests, and interactive visualizations. For each selected probability distribution, a standard modeling guide is provided along with spreadsheets that detail the methodology for using the chosen distribution in data science, operations research, and artificial intelligence.\r\n</p>\r\n\r\n<p>\r\n In addition, Phitter offers the capability to perform process simulations, allowing users to graph and observe minimum times for specific observations. It also supports queue simulations with flexibility to configure various parameters, such as the number of servers, maximum population size, system capacity, and different queue disciplines, including First-In-First-Out (FIFO), Last-In-First-Out (LIFO), and priority-based service (PBS).\r\n</p>\r\n\r\n<p>\r\n This repository contains the implementation of the python library and the kernel of <a href=\"https://phitter.io\">Phitter Web</a>\r\n</p>\r\n\r\n## Installation\r\n\r\n### Requirements\r\n\r\n```console\r\npython: >=3.9\r\n```\r\n\r\n### PyPI\r\n\r\n```console\r\npip install phitter\r\n```\r\n\r\n## Usage\r\n\r\n### **_1. Fit Notebook's Tutorials_**\r\n\r\n| Tutorial | Notebooks |\r\n| :------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\r\n| **Fit Continuous** | <a target=\"_blank\" href=\"https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/fit_continuous_ncdb.ipynb\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a> |\r\n| **Fit Discrete** | <a target=\"_blank\" href=\"https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/fit_discrete_galton_board.ipynb\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a> |\r\n| **Fit Accelerate [Sample>100K]** | <a target=\"_blank\" href=\"https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/fit_accelerate.ipynb\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a> |\r\n| **Fit Specific Disribution** | <a target=\"_blank\" href=\"https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/fit_specefic_distribution.ipynb\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a> |\r\n| **Working Distribution** | <a target=\"_blank\" href=\"https://colab.research.google.com/github/phitterio/phitter-kernel/blob/main/examples/working_distribution.ipynb\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a> |\r\n\r\n### **_2. Simulation Notebook's Tutorials_**\r\n\r\nPending\r\n\r\n## Documentation\r\n\r\n<details>\r\n\r\n<summary style=\"font-size: 16px; font-weight: bold;\">Documentation Fit Module</summary>\r\n\r\n### General Fit\r\n\r\n```python\r\nimport phitter\r\n\r\n## Define your dataset\r\ndata: list[int | float] = [...]\r\n\r\n## Make a continuous fit using Phitter\r\nphi = phitter.PHITTER(data)\r\nphi.fit()\r\n```\r\n\r\n### Full continuous implementation\r\n\r\n```python\r\nimport phitter\r\n\r\n## Define your dataset\r\ndata: list[int | float] = [...]\r\n\r\n## Make a continuous fit using Phitter\r\nphi = phitter.PHITTER(\r\n data=data,\r\n fit_type=\"continuous\",\r\n num_bins=15,\r\n confidence_level=0.95,\r\n minimum_sse=1e-2,\r\n distributions_to_fit=[\"beta\", \"normal\", \"fatigue_life\", \"triangular\"],\r\n)\r\nphi.fit(n_workers=6)\r\n```\r\n\r\n### Full discrete implementation\r\n\r\n```python\r\nimport phitter\r\n\r\n## Define your dataset\r\ndata: list[int | float] = [...]\r\n\r\n## Make a discrete fit using Phitter\r\nphi = phitter.PHITTER(\r\n data=data,\r\n fit_type=\"discrete\",\r\n confidence_level=0.95,\r\n minimum_sse=1e-2,\r\n distributions_to_fit=[\"binomial\", \"geometric\"],\r\n)\r\nphi.fit(n_workers=2)\r\n```\r\n\r\n### Phitter: properties and methods\r\n\r\n```python\r\nimport phitter\r\n\r\n## Define your dataset\r\ndata: list[int | float] = [...]\r\n\r\n## Make a fit using Phitter\r\nphi = phitter.PHITTER(data)\r\nphi.fit(n_workers=2)\r\n\r\n## Global methods and properties\r\nphi.summarize(k: int) -> pandas.DataFrame\r\nphi.summarize_info(k: int) -> pandas.DataFrame\r\nphi.best_distribution -> dict\r\nphi.sorted_distributions_sse -> dict\r\nphi.not_rejected_distributions -> dict\r\nphi.df_sorted_distributions_sse -> pandas.DataFrame\r\nphi.df_not_rejected_distributions -> pandas.DataFrame\r\n\r\n## Specific distribution methods and properties\r\nphi.get_parameters(id_distribution: str) -> dict\r\nphi.get_test_chi_square(id_distribution: str) -> dict\r\nphi.get_test_kolmmogorov_smirnov(id_distribution: str) -> dict\r\nphi.get_test_anderson_darling(id_distribution: str) -> dict\r\nphi.get_sse(id_distribution: str) -> float\r\nphi.get_n_test_passed(id_distribution: str) -> int\r\nphi.get_n_test_null(id_distribution: str) -> int\r\n```\r\n\r\n### Histogram Plot\r\n\r\n```python\r\nimport phitter\r\ndata: list[int | float] = [...]\r\nphi = phitter.PHITTER(data)\r\nphi.fit()\r\n\r\nphi.plot_histogram()\r\n```\r\n\r\n<img alt=\"phitter_histogram\" src=\"https://github.com/phitterio/phitter-kernel/blob/main/multimedia/histogram.png?raw=true\" width=\"500\" />\r\n\r\n### Histogram PDF Dsitributions Plot\r\n\r\n```python\r\nimport phitter\r\ndata: list[int | float] = [...]\r\nphi = phitter.PHITTER(data)\r\nphi.fit()\r\n\r\nphi.plot_histogram_distributions()\r\n```\r\n\r\n<img alt=\"phitter_histogram\" src=\"https://github.com/phitterio/phitter-kernel/blob/main/multimedia/histogram_pdf_distributions.png?raw=true\" width=\"500\" />\r\n\r\n### Histogram PDF Dsitribution Plot\r\n\r\n```python\r\nimport phitter\r\ndata: list[int | float] = [...]\r\nphi = phitter.PHITTER(data)\r\nphi.fit()\r\n\r\nphi.plot_distribution(\"beta\")\r\n```\r\n\r\n<img alt=\"phitter_histogram\" src=\"https://github.com/phitterio/phitter-kernel/blob/main/multimedia/histogram_pdf_distribution.png?raw=true\" width=\"500\" />\r\n\r\n### ECDF Plot\r\n\r\n```python\r\nimport phitter\r\ndata: list[int | float] = [...]\r\nphi = phitter.PHITTER(data)\r\nphi.fit()\r\n\r\nphi.plot_ecdf()\r\n```\r\n\r\n<img alt=\"phitter_histogram\" src=\"https://github.com/phitterio/phitter-kernel/blob/main/multimedia/ecdf.png?raw=true\" width=\"500\" />\r\n\r\n### ECDF Distribution Plot\r\n\r\n```python\r\nimport phitter\r\ndata: list[int | float] = [...]\r\nphi = phitter.PHITTER(data)\r\nphi.fit()\r\n\r\nphi.plot_ecdf_distribution(\"beta\")\r\n```\r\n\r\n<img alt=\"phitter_histogram\" src=\"https://github.com/phitterio/phitter-kernel/blob/main/multimedia/ecdf_distribution.png?raw=true\" width=\"500\" />\r\n\r\n### QQ Plot\r\n\r\n```python\r\nimport phitter\r\ndata: list[int | float] = [...]\r\nphi = phitter.PHITTER(data)\r\nphi.fit()\r\n\r\nphi.qq_plot(\"beta\")\r\n```\r\n\r\n<img alt=\"phitter_histogram\" src=\"https://github.com/phitterio/phitter-kernel/blob/main/multimedia/qq_plot_distribution.png?raw=true\" width=\"500\" />\r\n\r\n### QQ - Regression Plot\r\n\r\n```python\r\nimport phitter\r\ndata: list[int | float] = [...]\r\nphi = phitter.PHITTER(data)\r\nphi.fit()\r\n\r\nphi.qq_plot_regression(\"beta\")\r\n```\r\n\r\n<img alt=\"phitter_histogram\" src=\"https://github.com/phitterio/phitter-kernel/blob/main/multimedia/qq_plot_distribution_regression.png?raw=true\" width=\"500\" />\r\n\r\n### Working with distributions: Methods and properties\r\n\r\n```python\r\nimport phitter\r\n\r\ndistribution = phitter.continuous.BETA({\"alpha\": 5, \"beta\": 3, \"A\": 200, \"B\": 1000})\r\n\r\n## CDF, PDF, PPF, PMF receive float or numpy.ndarray. For discrete distributions PMF instead of PDF. Parameters notation are in description of ditribution\r\ndistribution.cdf(752) # -> 0.6242831129533498\r\ndistribution.pdf(388) # -> 0.0002342575686629883\r\ndistribution.ppf(0.623) # -> 751.5512889417921\r\ndistribution.sample(2) # -> [550.800114 514.85410326]\r\n\r\n## STATS\r\ndistribution.mean # -> 700.0\r\ndistribution.variance # -> 16666.666666666668\r\ndistribution.standard_deviation # -> 129.09944487358058\r\ndistribution.skewness # -> -0.3098386676965934\r\ndistribution.kurtosis # -> 2.5854545454545454\r\ndistribution.median # -> 708.707130841534\r\ndistribution.mode # -> 733.3333333333333\r\n```\r\n\r\n## Continuous Distributions\r\n\r\n#### [1. PDF File Documentation Continuous Distributions](https://github.com/phitterio/phitter-kernel/blob/main/distributions_documentation/continuous/document_continuous_distributions/phitter_continuous_distributions.pdf)\r\n\r\n#### 2. Resources Continuous Distributions\r\n\r\n| Distribution | Phitter Playground | Excel File | Google Sheets Files |\r\n| :------------------------ | :----------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------- |\r\n| alpha | \u25b6\ufe0f[phitter:alpha](https://phitter.io/distributions/continuous/alpha) | \ud83d\udcca[alpha.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/alpha.xlsx) | \ud83c\udf10[gs:alpha](https://docs.google.com/spreadsheets/d/1yRovxx1YbqgEul65DjjXetysc_4qgX2a_2NQQA1AxCA) |\r\n| arcsine | \u25b6\ufe0f[phitter:arcsine](https://phitter.io/distributions/continuous/arcsine) | \ud83d\udcca[arcsine.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/arcsine.xlsx) | \ud83c\udf10[gs:arcsine](https://docs.google.com/spreadsheets/d/1q8SKX4gmSbpGzimRvjopzaZ4KrEV5NY1EPmf1G1T7NQ) |\r\n| argus | \u25b6\ufe0f[phitter:argus](https://phitter.io/distributions/continuous/argus) | \ud83d\udcca[argus.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/argus.xlsx) | \ud83c\udf10[gs:argus](https://docs.google.com/spreadsheets/d/1u2x7IFUSB7rEyhs7s6-C2btT1Bk5aCr4WiUYEML-8xs) |\r\n| beta | \u25b6\ufe0f[phitter:beta](https://phitter.io/distributions/continuous/beta) | \ud83d\udcca[beta.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/beta.xlsx) | \ud83c\udf10[gs:beta](https://docs.google.com/spreadsheets/d/1P7NDy-9toV3dv64gabnr8l2NjB1xt_Ani5IVMTx3gyU) |\r\n| beta_prime | \u25b6\ufe0f[phitter:beta_prime](https://phitter.io/distributions/continuous/beta_prime) | \ud83d\udcca[beta_prime.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/beta_prime.xlsx) | \ud83c\udf10[gs:beta_prime](https://docs.google.com/spreadsheets/d/1-8cKeS9D6YixQE_uLig7UarXcoQoE-341yHDj8sfXA8) |\r\n| beta_prime_4p | \u25b6\ufe0f[phitter:beta_prime_4p](https://phitter.io/distributions/continuous/beta_prime_4p) | \ud83d\udcca[beta_prime_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/beta_prime_4p.xlsx) | \ud83c\udf10[gs:beta_prime_4p](https://docs.google.com/spreadsheets/d/1vlaZrj_jX9oNGwjW0o4Z1AUTuUTGE8Z-Akis_wb7Jq4) |\r\n| bradford | \u25b6\ufe0f[phitter:bradford](https://phitter.io/distributions/continuous/bradford) | \ud83d\udcca[bradford.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/bradford.xlsx) | \ud83c\udf10[gs:bradford](https://docs.google.com/spreadsheets/d/1kI8b05IXur3I9SUJdrbYIdv7zMdzVxVGPWx6sK6YmuU) |\r\n| burr | \u25b6\ufe0f[phitter:burr](https://phitter.io/distributions/continuous/burr) | \ud83d\udcca[burr.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/burr.xlsx) | \ud83c\udf10[gs:burr](https://docs.google.com/spreadsheets/d/1vhY3l3VAgBj9BQT1yE3meRTmEZP3HXjjm30nxDKCwCI) |\r\n| burr_4p | \u25b6\ufe0f[phitter:burr_4p](https://phitter.io/distributions/continuous/burr_4p) | \ud83d\udcca[burr_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/burr_4p.xlsx) | \ud83c\udf10[gs:burr_4p](https://docs.google.com/spreadsheets/d/1tEk3O2yvANj_PlLqACuwvRSqYYGQVRFH1SPMdLGYnz4) |\r\n| cauchy | \u25b6\ufe0f[phitter:cauchy](https://phitter.io/distributions/continuous/cauchy) | \ud83d\udcca[cauchy.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/cauchy.xlsx) | \ud83c\udf10[gs:cauchy](https://docs.google.com/spreadsheets/d/1xoJJvuSvfg-umC7Ogio9fde1l4TiWuAlR2IxucYK0y8) |\r\n| chi_square | \u25b6\ufe0f[phitter:chi_square](https://phitter.io/distributions/continuous/chi_square) | \ud83d\udcca[chi_square.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/chi_square.xlsx) | \ud83c\udf10[gs:chi_square](https://docs.google.com/spreadsheets/d/1VatJuUON_2qghjPEYMdcjGE7TYbYqduzgdYe5YNyVf4) |\r\n| chi_square_3p | \u25b6\ufe0f[phitter:chi_square_3p](https://phitter.io/distributions/continuous/chi_square_3p) | \ud83d\udcca[chi_square_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/chi_square_3p.xlsx) | \ud83c\udf10[gs:chi_square_3p](https://docs.google.com/spreadsheets/d/15tf3ZKbEgR3JWQRbMT2OaNij3INTGGUuNsR01NCDFJw) |\r\n| dagum | \u25b6\ufe0f[phitter:dagum](https://phitter.io/distributions/continuous/dagum) | \ud83d\udcca[dagum.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/dagum.xlsx) | \ud83c\udf10[gs:dagum](https://docs.google.com/spreadsheets/d/1qct7LByxY_z2-Rl-pWFG1LQsUxW8VQaCgLizn93YPxk) |\r\n| dagum_4p | \u25b6\ufe0f[phitter:dagum_4p](https://phitter.io/distributions/continuous/dagum_4p) | \ud83d\udcca[dagum_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/dagum_4p.xlsx) | \ud83c\udf10[gs:dagum_4p](https://docs.google.com/spreadsheets/d/1ZkKqvVdy7CvhvXwK830F6GWJrdNxoXBxJYeFD6XC2DM) |\r\n| erlang | \u25b6\ufe0f[phitter:erlang](https://phitter.io/distributions/continuous/erlang) | \ud83d\udcca[erlang.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/erlang.xlsx) | \ud83c\udf10[gs:erlang](https://docs.google.com/spreadsheets/d/1uG3Otntnm3cvMSkhkEiBVKuFn1pCLSWmiCxfN01D824) |\r\n| erlang_3p | \u25b6\ufe0f[phitter:erlang_3p](https://phitter.io/distributions/continuous/erlang_3p) | \ud83d\udcca[erlang_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/erlang_3p.xlsx) | \ud83c\udf10[gs:erlang_3p](https://docs.google.com/spreadsheets/d/1EvFPyOAL-TPQyNf7sAXfqgHqap8sGynH0XxrLRVP12M) |\r\n| error_function | \u25b6\ufe0f[phitter:error_function](https://phitter.io/distributions/continuous/error_function) | \ud83d\udcca[error_function.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/error_function.xlsx) | \ud83c\udf10[gs:error_function](https://docs.google.com/spreadsheets/d/1QT1vSgTWVgDmNz4FrH3fhwRGpgvPohgqZSCADHfBXkM) |\r\n| exponential | \u25b6\ufe0f[phitter:exponential](https://phitter.io/distributions/continuous/exponential) | \ud83d\udcca[exponential.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/exponential.xlsx) | \ud83c\udf10[gs:exponential](https://docs.google.com/spreadsheets/d/1c8aCgHTq3fEyIkVM1Ph3fzebxQMuourz1UkWbH4h3HA) |\r\n| exponential_2p | \u25b6\ufe0f[phitter:exponential_2p](https://phitter.io/distributions/continuous/exponential_2p) | \ud83d\udcca[exponential_2p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/exponential_2p.xlsx) | \ud83c\udf10[gs:exponential_2p](https://docs.google.com/spreadsheets/d/1XtrdS8iSCM1l33rbaXSz1uWZ3vnQsYPK-07NYE-ZYBs) |\r\n| f | \u25b6\ufe0f[phitter:f](https://phitter.io/distributions/continuous/f) | \ud83d\udcca[f.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/f.xlsx) | \ud83c\udf10[gs:f](https://docs.google.com/spreadsheets/d/137gYI8B6MDnqFoQ4bY1crdpFSKtPzRgaJS564SY_CUY) |\r\n| f_4p | \u25b6\ufe0f[phitter:f_4p](https://phitter.io/distributions/continuous/f_4p) | \ud83d\udcca[f_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/f_4p.xlsx) | \ud83c\udf10[gs:f_4p](https://docs.google.com/spreadsheets/d/11MgyMqzOyGNtFLdGviRTeNhAQMYBCJ8QRMHGxoPCzwM) |\r\n| fatigue_life | \u25b6\ufe0f[phitter:fatigue_life](https://phitter.io/distributions/continuous/fatigue_life) | \ud83d\udcca[fatigue_life.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/fatigue_life.xlsx) | \ud83c\udf10[gs:fatigue_life](https://docs.google.com/spreadsheets/d/1j-U_YMX89VHe2jVq3pazpzqYeA1j1zopW22C9yJcPS0) |\r\n| folded_normal | \u25b6\ufe0f[phitter:folded_normal](https://phitter.io/distributions/continuous/folded_normal) | \ud83d\udcca[folded_normal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/folded_normal.xlsx) | \ud83c\udf10[gs:folded_normal](https://docs.google.com/spreadsheets/d/17NlSnru_46J8pSjxMPLDlzxoG2fPKWjeFvTh0ydfX4k) |\r\n| frechet | \u25b6\ufe0f[phitter:frechet](https://phitter.io/distributions/continuous/frechet) | \ud83d\udcca[frechet.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/frechet.xlsx) | \ud83c\udf10[gs:frechet](https://docs.google.com/spreadsheets/d/1PNGvHImwOFIragM_hHrQJcTN7OcqCKFoHKXlPq76fnI) |\r\n| gamma | \u25b6\ufe0f[phitter:gamma](https://phitter.io/distributions/continuous/gamma) | \ud83d\udcca[gamma.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gamma.xlsx) | \ud83c\udf10[gs:gamma](https://docs.google.com/spreadsheets/d/1HgD3a1zOml7Hy9PMVvFwQwrbmbs8iPbH-zQMowH0LVE) |\r\n| gamma_3p | \u25b6\ufe0f[phitter:gamma_3p](https://phitter.io/distributions/continuous/gamma_3p) | \ud83d\udcca[gamma_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gamma_3p.xlsx) | \ud83c\udf10[gs:gamma_3p](https://docs.google.com/spreadsheets/d/1NkyFZFOMzk2V9qkFEI_zhGUGWiGV-K9vU-RLaFB7ip8) |\r\n| generalized_extreme_value | \u25b6\ufe0f[phitter:gen_extreme_value](https://phitter.io/distributions/continuous/generalized_extreme_value) | \ud83d\udcca[gen_extreme_value.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_extreme_value.xlsx) | \ud83c\udf10[gs:gen_extreme_value](https://docs.google.com/spreadsheets/d/19qHvnTJGVVZ7zhi-yhauCOGhu0iAdkYJ5FFgwv1q5OI) |\r\n| generalized_gamma | \u25b6\ufe0f[phitter:gen_gamma](https://phitter.io/distributions/continuous/generalized_gamma) | \ud83d\udcca[gen_gamma.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_gamma.xlsx) | \ud83c\udf10[gs:gen_gamma](https://docs.google.com/spreadsheets/d/1xx8b_VSG4jznZzaKq2yKumw5VcNX5Wj86YqLO7n4S5A) |\r\n| generalized_gamma_4p | \u25b6\ufe0f[phitter:gen_gamma_4p](https://phitter.io/distributions/continuous/generalized_gamma_4p) | \ud83d\udcca[gen_gamma_4p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_gamma_4p.xlsx) | \ud83c\udf10[gs:gen_gamma_4p](https://docs.google.com/spreadsheets/d/1TN72MSkZ2bRyoNy29h4VIxFudXAroSi1PnmFijPvO0M) |\r\n| generalized_logistic | \u25b6\ufe0f[phitter:gen_logistic](https://phitter.io/distributions/continuous/generalized_logistic) | \ud83d\udcca[gen_logistic.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_logistic.xlsx) | \ud83c\udf10[gs:gen_logistic](https://docs.google.com/spreadsheets/d/1vwppGjHbwEA3xd3OtV51sPZhpOWyzmPIOV_Tued-I1Y) |\r\n| generalized_normal | \u25b6\ufe0f[phitter:gen_normal](https://phitter.io/distributions/continuous/generalized_normal) | \ud83d\udcca[gen_normal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_normal.xlsx) | \ud83c\udf10[gs:gen_normal](https://docs.google.com/spreadsheets/d/1_77JSp0mhHxqvQugVRRWIoQOTa91WdyNqNmOfDNuSfA) |\r\n| generalized_pareto | \u25b6\ufe0f[phitter:gen_pareto](https://phitter.io/distributions/continuous/generalized_pareto) | \ud83d\udcca[gen_pareto.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/generalized_pareto.xlsx) | \ud83c\udf10[gs:gen_pareto](https://docs.google.com/spreadsheets/d/1E28WYhX4Ba9Nj-JNxqAm-Gh7o1EOOIOwXIdCFl1PXI0) |\r\n| gibrat | \u25b6\ufe0f[phitter:gibrat](https://phitter.io/distributions/continuous/gibrat) | \ud83d\udcca[gibrat.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gibrat.xlsx) | \ud83c\udf10[gs:gibrat](https://docs.google.com/spreadsheets/d/1pM7skBPnH8V3GCJo0iSst46Oc2OzqWdX2qATYBqc_GQ) |\r\n| gumbel_left | \u25b6\ufe0f[phitter:gumbel_left](https://phitter.io/distributions/continuous/gumbel_left) | \ud83d\udcca[gumbel_left.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gumbel_left.xlsx) | \ud83c\udf10[gs:gumbel_left](https://docs.google.com/spreadsheets/d/1WoW97haebsHk1sB8smC4Zq8KqW8leJY0bPK757B2IdI) |\r\n| gumbel_right | \u25b6\ufe0f[phitter:gumbel_right](https://phitter.io/distributions/continuous/gumbel_right) | \ud83d\udcca[gumbel_right.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/gumbel_right.xlsx) | \ud83c\udf10[gs:gumbel_right](https://docs.google.com/spreadsheets/d/1CpzfSwAdptFrI8DhV3tWRsEFd9cr6h3Jaj7t3gigims) |\r\n| half_normal | \u25b6\ufe0f[phitter:half_normal](https://phitter.io/distributions/continuous/half_normal) | \ud83d\udcca[half_normal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/half_normal.xlsx) | \ud83c\udf10[gs:half_normal](https://docs.google.com/spreadsheets/d/1HQpNSNIhZPzMQvWWKyShnYNH74d1Bhs_d6k9La52V9M) |\r\n| hyperbolic_secant | \u25b6\ufe0f[phitter:hyperbolic_secant](https://phitter.io/distributions/continuous/hyperbolic_secant) | \ud83d\udcca[hyperbolic_secant.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/hyperbolic_secant.xlsx) | \ud83c\udf10[gs:hyperbolic_secant](https://docs.google.com/spreadsheets/d/1lTcLlwX0fmgUjhT4ljvKL_dqSReK_lEthsZNBtDxAF8) |\r\n| inverse_gamma | \u25b6\ufe0f[phitter:inverse_gamma](https://phitter.io/distributions/continuous/inverse_gamma) | \ud83d\udcca[inverse_gamma.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/inverse_gamma.xlsx) | \ud83c\udf10[gs:inverse_gamma](https://docs.google.com/spreadsheets/d/1uOgfUvhBHKAXhbYATUwdHRQnBMIMnu6rWecqKx6MoIA) |\r\n| inverse_gamma_3p | \u25b6\ufe0f[phitter:inverse_gamma_3p](https://phitter.io/distributions/continuous/inverse_gamma_3p) | \ud83d\udcca[inverse_gamma_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/inverse_gamma_3p.xlsx) | \ud83c\udf10[gs:inverse_gamma_3p](https://docs.google.com/spreadsheets/d/16LCC6j_j1Cm7stc7LEd-C0ObUcZ-agL51ALGYxoZtrI) |\r\n| inverse_gaussian | \u25b6\ufe0f[phitter:inverse_gaussian](https://phitter.io/distributions/continuous/inverse_gaussian) | \ud83d\udcca[inverse_gaussian.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/inverse_gaussian.xlsx) | \ud83c\udf10[gs:inverse_gaussian](https://docs.google.com/spreadsheets/d/10LaEnmnRxNESViLTlw6FDyt1YSWNbMlBXaWc9t4q5qA) |\r\n| inverse_gaussian_3p | \u25b6\ufe0f[phitter:inverse_gaussian_3p](https://phitter.io/distributions/continuous/inverse_gaussian_3p) | \ud83d\udcca[inverse_gaussian_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/inverse_gaussian_3p.xlsx) | \ud83c\udf10[gs:inverse_gaussian_3p](https://docs.google.com/spreadsheets/d/1wkcSlXnUdMe4by2N9nPA_Cdsz3D0kHL7MVchsjl_CTQ) |\r\n| johnson_sb | \u25b6\ufe0f[phitter:johnson_sb](https://phitter.io/distributions/continuous/johnson_sb) | \ud83d\udcca[johnson_sb.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/johnson_sb.xlsx) | \ud83c\udf10[gs:johnson_sb](https://docs.google.com/spreadsheets/d/1H3bpJd729k0VK3LtvgxvKJiduIdP04UkHhgJoq4ayHQ) |\r\n| johnson_su | \u25b6\ufe0f[phitter:johnson_su](https://phitter.io/distributions/continuous/johnson_su) | \ud83d\udcca[johnson_su.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/johnson_su.xlsx) | \ud83c\udf10[gs:johnson_su](https://docs.google.com/spreadsheets/d/15kw_NZr3RFjN9orvF844ITWXroWRsCFkY7Uvq0NZ4K8) |\r\n| kumaraswamy | \u25b6\ufe0f[phitter:kumaraswamy](https://phitter.io/distributions/continuous/kumaraswamy) | \ud83d\udcca[kumaraswamy.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/kumaraswamy.xlsx) | \ud83c\udf10[gs:kumaraswamy](https://docs.google.com/spreadsheets/d/10YJUDlAEygfOn07YxHBJxDqiXxygv8jKpJ8WvCZhe84) |\r\n| laplace | \u25b6\ufe0f[phitter:laplace](https://phitter.io/distributions/continuous/laplace) | \ud83d\udcca[laplace.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/laplace.xlsx) | \ud83c\udf10[gs:laplace](https://docs.google.com/spreadsheets/d/110gPFTHOnQqecbXrjq3Wqv52I5Cw93UjL7eoSVC1DIs) |\r\n| levy | \u25b6\ufe0f[phitter:levy](https://phitter.io/distributions/continuous/levy) | \ud83d\udcca[levy.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/levy.xlsx) | \ud83c\udf10[gs:levy](https://docs.google.com/spreadsheets/d/1OIA4C6iqhwK0Y17wb_O5ce9YXy4JIBf1yq3TqcmDp3U) |\r\n| loggamma | \u25b6\ufe0f[phitter:loggamma](https://phitter.io/distributions/continuous/loggamma) | \ud83d\udcca[loggamma.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/loggamma.xlsx) | \ud83c\udf10[gs:loggamma](https://docs.google.com/spreadsheets/d/1SXCmxXs7hkajo_W_qL-e0MJQEaUJqTpUno1nYGXxmxI) |\r\n| logistic | \u25b6\ufe0f[phitter:logistic](https://phitter.io/distributions/continuous/logistic) | \ud83d\udcca[logistic.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/logistic.xlsx) | \ud83c\udf10[gs:logistic](https://docs.google.com/spreadsheets/d/1WokfLcAM2f2TE9xcZwwuy3qjl4itw-y0cwAb7fyKxb0) |\r\n| loglogistic | \u25b6\ufe0f[phitter:loglogistic](https://phitter.io/distributions/continuous/loglogistic) | \ud83d\udcca[loglogistic.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/loglogistic.xlsx) | \ud83c\udf10[gs:loglogistic](https://docs.google.com/spreadsheets/d/1WWXRuI6AP9n_n47ikOHWUjkfCYUOQgzhDjRsKBKEHXA) |\r\n| loglogistic_3p | \u25b6\ufe0f[phitter:loglogistic_3p](https://phitter.io/distributions/continuous/loglogistic_3p) | \ud83d\udcca[loglogistic_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/loglogistic_3p.xlsx) | \ud83c\udf10[gs:loglogistic_3p](https://docs.google.com/spreadsheets/d/1RaLZ5L0rTrv9_fAi6izElf02ucuFy9LwagL_gQn3R0Y) |\r\n| lognormal | \u25b6\ufe0f[phitter:lognormal](https://phitter.io/distributions/continuous/lognormal) | \ud83d\udcca[lognormal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/lognormal.xlsx) | \ud83c\udf10[gs:lognormal](https://docs.google.com/spreadsheets/d/1lS1cR4C2R45ug0ZyLxBlRBtcXH6hNPE1L-5wP68gUpA) |\r\n| maxwell | \u25b6\ufe0f[phitter:maxwell](https://phitter.io/distributions/continuous/maxwell) | \ud83d\udcca[maxwell.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/maxwell.xlsx) | \ud83c\udf10[gs:maxwell](https://docs.google.com/spreadsheets/d/15tPw2RM2_a0vJMjVwNgsJnJUKFk9xbcEALqOf1m5qH0) |\r\n| moyal | \u25b6\ufe0f[phitter:moyal](https://phitter.io/distributions/continuous/moyal) | \ud83d\udcca[moyal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/moyal.xlsx) | \ud83c\udf10[gs:moyal](https://docs.google.com/spreadsheets/d/1_58zWuk_-wSEesJbCc2FTHxv4HO5WouGwlStIZitt1I) |\r\n| nakagami | \u25b6\ufe0f[phitter:nakagami](https://phitter.io/distributions/continuous/nakagami) | \ud83d\udcca[nakagami.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/nakagami.xlsx) | \ud83c\udf10[gs:nakagami](https://docs.google.com/spreadsheets/d/1fY8ID5gz1R6oWFm4w91GFdQMCd0wJ5ZRgfWi-yQtGqs) |\r\n| non_central_chi_square | \u25b6\ufe0f[phitter:non_central_chi_square](https://phitter.io/distributions/continuous/non_central_chi_square) | \ud83d\udcca[non_central_chi_square.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/non_central_chi_square.xlsx) | \ud83c\udf10[gs:non_central_chi_square](https://docs.google.com/spreadsheets/d/17KWXPKOuMfTG0w4Gqe3lU3vWY2e9k31AX22PXTzOrFk) |\r\n| non_central_f | \u25b6\ufe0f[phitter:non_central_f](https://phitter.io/distributions/continuous/non_central_f) | \ud83d\udcca[non_central_f.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/non_central_f.xlsx) | \ud83c\udf10[gs:non_central_f](https://docs.google.com/spreadsheets/d/14mZ563hIw2vXNM89DUncpsOdGgBXEUIIxJNa3-MVNIM) |\r\n| non_central_t_student | \u25b6\ufe0f[phitter:non_central_t_student](https://phitter.io/distributions/continuous/non_central_t_student) | \ud83d\udcca[non_central_t_student.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/non_central_t_student.xlsx) | \ud83c\udf10[gs:non_central_t_student](https://docs.google.com/spreadsheets/d/1u8pseBDM3brw0AXlru1cprOsfQuHMWfvfDbz2XxKoOY) |\r\n| normal | \u25b6\ufe0f[phitter:normal](https://phitter.io/distributions/continuous/normal) | \ud83d\udcca[normal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/normal.xlsx) | \ud83c\udf10[gs:normal](https://docs.google.com/spreadsheets/d/18QTB3YYprvdFhr6PJI-DFcZOnYAuffdH8JHOtH1f83I) |\r\n| pareto_first_kind | \u25b6\ufe0f[phitter:pareto_first_kind](https://phitter.io/distributions/continuous/pareto_first_kind) | \ud83d\udcca[pareto_first_kind.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/pareto_first_kind.xlsx) | \ud83c\udf10[gs:pareto_first_kind](https://docs.google.com/spreadsheets/d/1T-Sjp0yCxbJpP9njbovOiFpbP8PrwI5jlj66odxAw5E) |\r\n| pareto_second_kind | \u25b6\ufe0f[phitter:pareto_second_kind](https://phitter.io/distributions/continuous/pareto_second_kind) | \ud83d\udcca[pareto_second_kind.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/pareto_second_kind.xlsx) | \ud83c\udf10[gs:pareto_second_kind](https://docs.google.com/spreadsheets/d/1hnBOqkbcRNuyRxaLP8eHei5MRwUFDb1bgdcZYkpYKio) |\r\n| pert | \u25b6\ufe0f[phitter:pert](https://phitter.io/distributions/continuous/pert) | \ud83d\udcca[pert.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/pert.xlsx) | \ud83c\udf10[gs:pert](https://docs.google.com/spreadsheets/d/1NeKJKq4D_BB-ouefgJ35FzcORA7fH1OQwC5dCZKI_38) |\r\n| power_function | \u25b6\ufe0f[phitter:power_function](https://phitter.io/distributions/continuous/power_function) | \ud83d\udcca[power_function.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/power_function.xlsx) | \ud83c\udf10[gs:power_function](https://docs.google.com/spreadsheets/d/1Hbi-XZiCK--JGFnoY-8iDLmNgYclDo5L4LKYKCCxfzw) |\r\n| rayleigh | \u25b6\ufe0f[phitter:rayleigh](https://phitter.io/distributions/continuous/rayleigh) | \ud83d\udcca[rayleigh.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/rayleigh.xlsx) | \ud83c\udf10[gs:rayleigh](https://docs.google.com/spreadsheets/d/1UWtjOwokob4x43OcMLLFbNTYUqOo5dJWqSTfWbS-yyw) |\r\n| reciprocal | \u25b6\ufe0f[phitter:reciprocal](https://phitter.io/distributions/continuous/reciprocal) | \ud83d\udcca[reciprocal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/reciprocal.xlsx) | \ud83c\udf10[gs:reciprocal](https://docs.google.com/spreadsheets/d/1ghFeCj8Q_hbpWqv9xXaNl1UKUe-5kOomZPWyI1JsoGA) |\r\n| rice | \u25b6\ufe0f[phitter:rice](https://phitter.io/distributions/continuous/rice) | \ud83d\udcca[rice.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/rice.xlsx) | \ud83c\udf10[gs:rice](https://docs.google.com/spreadsheets/d/1hGVFWbF0w7D0l54t_p0vUId0rO2s61BRdrgslDYTnWc) |\r\n| semicircular | \u25b6\ufe0f[phitter:semicircular](https://phitter.io/distributions/continuous/semicircular) | \ud83d\udcca[semicircular.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/semicircular.xlsx) | \ud83c\udf10[gs:semicircular](https://docs.google.com/spreadsheets/d/195c9VbAKtvEndJKnFp52TrENYK2iytMzIXLMKFAGgx4) |\r\n| t_student | \u25b6\ufe0f[phitter:t_student](https://phitter.io/distributions/continuous/t_student) | \ud83d\udcca[t_student.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/t_student.xlsx) | \ud83c\udf10[gs:t_student](https://docs.google.com/spreadsheets/d/1fGxJfFL5eXAWk8xNI6HgCX9SQuXi-m5mR83N1dMLJrg) |\r\n| t_student_3p | \u25b6\ufe0f[phitter:t_student_3p](https://phitter.io/distributions/continuous/t_student_3p) | \ud83d\udcca[t_student_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/t_student_3p.xlsx) | \ud83c\udf10[gs:t_student_3p](https://docs.google.com/spreadsheets/d/1K8bpbc-0mwe0mvRYXUQmoE8vaTigciJWDS4CPXmJodU) |\r\n| trapezoidal | \u25b6\ufe0f[phitter:trapezoidal](https://phitter.io/distributions/continuous/trapezoidal) | \ud83d\udcca[trapezoidal.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/trapezoidal.xlsx) | \ud83c\udf10[gs:trapezoidal](https://docs.google.com/spreadsheets/d/1Gsk5M_R2q9Or8RTggKtTkqEk-cN6IuDgYqbmhFm5Xlw) |\r\n| triangular | \u25b6\ufe0f[phitter:triangular](https://phitter.io/distributions/continuous/triangular) | \ud83d\udcca[triangular.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/triangular.xlsx) | \ud83c\udf10[gs:triangular](https://docs.google.com/spreadsheets/d/1nirKOt7O7rUf2nlYu61cnNYT91GKSzb6pVlc1-pzzGw) |\r\n| uniform | \u25b6\ufe0f[phitter:uniform](https://phitter.io/distributions/continuous/uniform) | \ud83d\udcca[uniform.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/uniform.xlsx) | \ud83c\udf10[gs:uniform](https://docs.google.com/spreadsheets/d/1TSaKNHOsVLYUobyKTpHR6qCuCAgfkKmRSETvdeZLcw4) |\r\n| weibull | \u25b6\ufe0f[phitter:weibull](https://phitter.io/distributions/continuous/weibull) | \ud83d\udcca[weibull.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/weibull.xlsx) | \ud83c\udf10[gs:weibull](https://docs.google.com/spreadsheets/d/1DdNwWHmu0PZAhMYf475EMU3scTMXok3wOhzsg7gn8Ek) |\r\n| weibull_3p | \u25b6\ufe0f[phitter:weibull_3p](https://phitter.io/distributions/continuous/weibull_3p) | \ud83d\udcca[weibull_3p.xlsx](https://github.com/phitterio/phitter-files/blob/main/continuous/weibull_3p.xlsx) | \ud83c\udf10[gs:weibull_3p](https://docs.google.com/spreadsheets/d/1agwpFGpXm62srDxgPOoDQGN8nGd8zaoztXg84Bgedlo) |\r\n\r\n## Discrete Distributions\r\n\r\n#### [1. PDF File Documentation Discrete Distributions](https://github.com/phitterio/phitter-kernel/blob/main/distributions_documentation/discrete/document_discrete_distributions/phitter_discrete_distributions.pdf)\r\n\r\n#### 2. Resources Discrete Distributions\r\n\r\n| Distribution | Phitter Playground | Excel File | Google Sheets Files |\r\n| :---------------- | :------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------ |\r\n| bernoulli | \u25b6\ufe0f[phitter:bernoulli](https://phitter.io/distributions/continuous/bernoulli) | \ud83d\udcca[bernoulli.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/bernoulli.xlsx) | \ud83c\udf10[gs:bernoulli](https://docs.google.com/spreadsheets/d/1sWJZYZWW8cVLFXYV-fb3Lq4y2YgWzgTGWHfhIJ0zM5c) |\r\n| binomial | \u25b6\ufe0f[phitter:binomial](https://phitter.io/distributions/continuous/binomial) | \ud83d\udcca[binomial.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/binomial.xlsx) | \ud83c\udf10[gs:binomial](https://docs.google.com/spreadsheets/d/1bPOiZVUhjLMmbFqVjWMqg1NzTvsZxVIw95fi5hIhkn0) |\r\n| geometric | \u25b6\ufe0f[phitter:geometric](https://phitter.io/distributions/continuous/geometric) | \ud83d\udcca[geometric.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/geometric.xlsx) | \ud83c\udf10[gs:geometric](https://docs.google.com/spreadsheets/d/1cEU6n8UxpJ_Had6WfFnAXZ2FcaLGYu8g5srQ_iEfjgg) |\r\n| hypergeometric | \u25b6\ufe0f[phitter:hypergeometric](https://phitter.io/distributions/continuous/hypergeometric) | \ud83d\udcca[hypergeometric.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/hypergeometric.xlsx) | \ud83c\udf10[gs:hypergeometric](https://docs.google.com/spreadsheets/d/10xUqKVoFzUiukuYt6VFwlaetMDTdGulHQPEWl1rJiMA) |\r\n| logarithmic | \u25b6\ufe0f[phitter:logarithmic](https://phitter.io/distributions/continuous/logarithmic) | \ud83d\udcca[logarithmic.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/logarithmic.xlsx) | \ud83c\udf10[gs:logarithmic](https://docs.google.com/spreadsheets/d/1N-YXrSfOYkPKwerL5I1QmfxuwbZzVUzgBWTcKzcmLhE) |\r\n| negative_binomial | \u25b6\ufe0f[phitter:negative_binomial](https://phitter.io/distributions/continuous/negative_binomial) | \ud83d\udcca[negative_binomial.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/negative_binomial.xlsx) | \ud83c\udf10[gs:negative_binomial](https://docs.google.com/spreadsheets/d/1xmCWBiswdW5s7SIhwT2nrdQxLFAb6hw73iy52_nvjQE) |\r\n| poisson | \u25b6\ufe0f[phitter:poisson](https://phitter.io/distributions/continuous/poisson) | \ud83d\udcca[poisson.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/poisson.xlsx) | \ud83c\udf10[gs:poisson](https://docs.google.com/spreadsheets/d/1fwoe70JH5Ve6sETb7AwBdb4eep_h2DeGlpHIWcHeZA8) |\r\n| uniform | \u25b6\ufe0f[phitter:uniform](https://phitter.io/distributions/continuous/uniform) | \ud83d\udcca[uniform.xlsx](https://github.com/phitterio/phitter-files/blob/main/discrete/uniform.xlsx) | \ud83c\udf10[gs:uniform](https://docs.google.com/spreadsheets/d/1Ahl2ugOKkUCVWzzc_aNHwlA5Af4sHpTwqSiFIyYPsfM) |\r\n\r\n## Benchmarks\r\n\r\n### _Fit time continuous distributions_\r\n\r\n| Sample Size / Workers | 1 | 2 | 6 | 10 | 20 |\r\n| :-------------------: | :-------: | :------: | :------: | :------: | :------: |\r\n| **1K** | 8.2981 | 7.1242 | 8.9667 | 9.9287 | 16.2246 |\r\n| **10K** | 20.8711 | 14.2647 | 10.5612 | 11.6004 | 17.8562 |\r\n| **100K** | 152.6296 | 97.2359 | 57.7310 | 51.6182 | 53.2313 |\r\n| **500K** | 914.9291 | 640.8153 | 370.0323 | 267.4597 | 257.7534 |\r\n| **1M** | 1580.8501 | 972.3985 | 573.5429 | 496.5569 | 425.7809 |\r\n\r\n### _Estimation time parameters discrete distributions_\r\n\r\n| Sample Size / Workers | 1 | 2 | 4 |\r\n| :-------------------: | :-----: | :-----: | :-----: |\r\n| **1K** | 0.1688 | 2.6402 | 2.8719 |\r\n| **10K** | 0.4462 | 2.4452 | 3.0471 |\r\n| **100K** | 4.5598 | 6.3246 | 7.5869 |\r\n| **500K** | 19.0172 | 21.8047 | 19.8420 |\r\n| **1M** | 39.8065 | 29.8360 | 30.2334 |\r\n\r\n### _Estimation time parameters continuous distributions_\r\n\r\n| Distribution / Sample Size | 1K | 10K | 100K | 500K | 1M | 10M |\r\n| :------------------------: | :----: | :----: | :-----: | :-----: | :------: | :-------: |\r\n| alpha | 0.3345 | 0.4625 | 2.5933 | 18.3856 | 39.6533 | 362.2951 |\r\n| arcsine | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| argus | 0.0559 | 0.2050 | 2.2472 | 13.3928 | 41.5198 | 362.2472 |\r\n| beta | 0.1880 | 0.1790 | 0.1940 | 0.2110 | 0.1800 | 0.3134 |\r\n| beta_prime | 0.1766 | 0.7506 | 7.6039 | 40.4264 | 85.0677 | 812.1323 |\r\n| beta_prime_4p | 0.0720 | 0.3630 | 3.9478 | 20.2703 | 40.2709 | 413.5239 |\r\n| bradford | 0.0110 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0010 |\r\n| burr | 0.0733 | 0.6931 | 5.5425 | 36.7684 | 79.8269 | 668.2016 |\r\n| burr_4p | 0.1552 | 0.7981 | 8.4716 | 44.4549 | 87.7292 | 858.0035 |\r\n| cauchy | 0.0090 | 0.0160 | 0.1581 | 1.1052 | 2.1090 | 21.5244 |\r\n| chi_square | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| chi_square_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| dagum | 0.3381 | 0.8278 | 9.6907 | 45.5855 | 98.6691 | 917.6713 |\r\n| dagum_4p | 0.3646 | 1.3307 | 13.3437 | 70.9462 | 140.9371 | 1396.3368 |\r\n| erlang | 0.0010 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| erlang_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| error_function | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| exponential | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| exponential_2p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| f | 0.0592 | 0.2948 | 2.6920 | 18.9458 | 29.9547 | 402.2248 |\r\n| fatigue_life | 0.0352 | 0.1101 | 1.7085 | 9.0090 | 20.4702 | 186.9631 |\r\n| folded_normal | 0.0020 | 0.0020 | 0.0020 | 0.0022 | 0.0033 | 0.0040 |\r\n| frechet | 0.1313 | 0.4359 | 5.7031 | 39.4202 | 43.2469 | 671.3343 |\r\n| f_4p | 0.3269 | 0.7517 | 0.6183 | 0.6037 | 0.5809 | 0.2073 |\r\n| gamma | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| gamma_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| generalized_extreme_value | 0.0833 | 0.2054 | 2.0337 | 10.3301 | 22.1340 | 243.3120 |\r\n| generalized_gamma | 0.0298 | 0.0178 | 0.0227 | 0.0236 | 0.0170 | 0.0241 |\r\n| generalized_gamma_4p | 0.0371 | 0.0116 | 0.0732 | 0.0725 | 0.0707 | 0.0730 |\r\n| generalized_logistic | 0.1040 | 0.1073 | 0.1037 | 0.0819 | 0.0989 | 0.0836 |\r\n| generalized_normal | 0.0154 | 0.0736 | 0.7367 | 2.4831 | 5.9752 | 55.2417 |\r\n| generalized_pareto | 0.3189 | 0.8978 | 8.9370 | 51.3813 | 101.6832 | 1015.2933 |\r\n| gibrat | 0.0328 | 0.0432 | 0.4287 | 2.7159 | 5.5721 | 54.1702 |\r\n| gumbel_left | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0010 | 0.0010 |\r\n| gumbel_right | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| half_normal | 0.0010 | 0.0000 | 0.0000 | 0.0010 | 0.0000 | 0.0000 |\r\n| hyperbolic_secant | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| inverse_gamma | 0.0308 | 0.0632 | 0.7233 | 5.0127 | 10.7885 | 99.1316 |\r\n| inverse_gamma_3p | 0.0787 | 0.1472 | 1.6513 | 11.1161 | 23.4587 | 227.6125 |\r\n| inverse_gaussian | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| inverse_gaussian_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| johnson_sb | 0.2966 | 0.7466 | 4.0707 | 40.2028 | 56.2130 | 728.2447 |\r\n| johnson_su | 0.0070 | 0.0010 | 0.0010 | 0.0143 | 0.0010 | 0.0010 |\r\n| kumaraswamy | 0.0164 | 0.0120 | 0.0130 | 0.0123 | 0.0125 | 0.0150 |\r\n| laplace | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| levy | 0.0100 | 0.0314 | 0.2296 | 1.1365 | 2.7211 | 26.4966 |\r\n| loggamma | 0.0085 | 0.0050 | 0.0050 | 0.0070 | 0.0062 | 0.0080 |\r\n| logistic | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| loglogistic | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| loglogistic_3p | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| lognormal | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0010 | 0.0000 |\r\n| maxwell | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0010 |\r\n| moyal | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| nakagami | 0.0000 | 0.0030 | 0.0213 | 0.1215 | 0.2649 | 2.2457 |\r\n| non_central_chi_square | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| non_central_f | 0.0190 | 0.0182 | 0.0210 | 0.0192 | 0.0190 | 0.0200 |\r\n| non_central_t_student | 0.0874 | 0.0822 | 0.0862 | 0.1314 | 0.2516 | 0.1781 |\r\n| normal | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| pareto_first_kind | 0.0010 | 0.0030 | 0.0390 | 0.2494 | 0.5226 | 5.5246 |\r\n| pareto_second_kind | 0.0643 | 0.1522 | 1.1722 | 10.9871 | 23.6534 | 201.1626 |\r\n| pert | 0.0052 | 0.0030 | 0.0030 | 0.0040 | 0.0040 | 0.0092 |\r\n| power_function | 0.0075 | 0.0040 | 0.0040 | 0.0030 | 0.0040 | 0.0040 |\r\n| rayleigh | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| reciprocal | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| rice | 0.0182 | 0.0030 | 0.0040 | 0.0060 | 0.0030 | 0.0050 |\r\n| semicircular | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| trapezoidal | 0.0083 | 0.0072 | 0.0073 | 0.0060 | 0.0070 | 0.0060 |\r\n| triangular | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| t_student | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| t_student_3p | 0.3892 | 1.1860 | 11.2759 | 71.1156 | 143.1939 | 1409.8578 |\r\n| uniform | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| weibull | 0.0010 | 0.0000 | 0.0000 | 0.0000 | 0.0010 | 0.0010 |\r\n| weibull_3p | 0.0061 | 0.0040 | 0.0030 | 0.0040 | 0.0050 | 0.0050 |\r\n\r\n### _Estimation time parameters discrete distributions_\r\n\r\n| Distribution / Sample Size | 1K | 10K | 100K | 500K | 1M | 10M |\r\n| :------------------------: | :----: | :----: | :----: | :----: | :----: | :----: |\r\n| bernoulli | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| binomial | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| geometric | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| hypergeometric | 0.0773 | 0.0061 | 0.0030 | 0.0020 | 0.0030 | 0.0051 |\r\n| logarithmic | 0.0210 | 0.0035 | 0.0171 | 0.0050 | 0.0030 | 0.0756 |\r\n| negative_binomial | 0.0293 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| poisson | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n| uniform | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |\r\n\r\n</details>\r\n\r\n<details>\r\n<summary style=\"font-size: 16px; font-weight: bold;\">Documentation Simulation Module</summary>\r\n\r\n## Process Simulation\r\n\r\nThis will help you to understand your processes. To use it, run the following line\r\n\r\n```python\r\nfrom phitter import simulation\r\n\r\n# Create a simulation process instance\r\nsimulation = simulation.ProcessSimulation()\r\n\r\n```\r\n\r\n### Add processes to your simulation instance\r\n\r\nThere are two ways to add processes to your simulation instance:\r\n\r\n- Adding a **process _without_ preceding process (new branch)**\r\n- Adding a **process _with_ preceding process (with previous ids)**\r\n\r\n#### Process _without_ preceding process (new branch)\r\n\r\n```python\r\n# Add a new process without preceding process\r\nsimulation.add_process(\r\n prob_distribution=\"normal\",\r\n parameters={\"mu\": 5, \"sigma\": 2},\r\n process_id=\"first_process\",\r\n number_of_products=10,\r\n number_of_servers=3,\r\n new_branch=True,\r\n)\r\n\r\n```\r\n\r\n#### Process _with_ preceding process (with previous ids)\r\n\r\n```python\r\n# Add a new process with preceding process\r\nsimulation.add_process(\r\n prob_distribution=\"exponential\",\r\n parameters={\"lambda\": 4},\r\n process_id=\"second_process\",\r\n previous_ids=[\"first_process\"],\r\n)\r\n\r\n```\r\n\r\n#### All together and adding some new process\r\n\r\nThe order in which you add each process **_matters_**. You can add as many processes as you need.\r\n\r\n```python\r\n# Add a new process without preceding process\r\nsimulation.add_process(\r\n prob_distribution=\"normal\",\r\n parameters={\"mu\": 5, \"sigma\": 2},\r\n process_id=\"first_process\",\r\n number_of_products=10,\r\n number_of_servers=3,\r\n new_branch=True,\r\n)\r\n\r\n# Add a new process with preceding process\r\nsimulation.add_process(\r\n prob_distribution=\"exponential\",\r\n parameters={\"lambda\": 4},\r\n process_id=\"second_process\",\r\n previous_ids=[\"first_process\"],\r\n)\r\n\r\n# Add a new process with preceding process\r\nsimulation.add_process(\r\n prob_distribution=\"gamma\",\r\n parameters={\"alpha\": 15, \"beta\": 3},\r\n process_id=\"third_process\",\r\n previous_ids=[\"first_process\"],\r\n)\r\n\r\n# Add a new process without preceding process\r\nsimulation.add_process(\r\n prob_distribution=\"exponential\",\r\n parameters={\"lambda\": 4.3},\r\n process_id=\"fourth_process\",\r\n new_branch=True,\r\n)\r\n\r\n\r\n# Add a new process with preceding process\r\nsimulation.add_process(\r\n prob_distribution=\"beta\",\r\n parameters={\"alpha\": 1, \"beta\": 1, \"A\": 2, \"B\": 3},\r\n process_id=\"fifth_process\",\r\n previous_ids=[\"second_process\", \"fourth_process\"],\r\n)\r\n\r\n# Add a new process with preceding process\r\nsimulation.add_process(\r\n prob_distribution=\"normal\",\r\n parameters={\"mu\": 15, \"sigma\": 2},\r\n process_id=\"sixth_process\",\r\n previous_ids=[\"third_process\", \"fifth_process\"],\r\n)\r\n```\r\n\r\n### Visualize your processes\r\n\r\nYou can visualize your processes to see if what you're trying to simulate is your actual process.\r\n\r\n```python\r\n# Graph your process\r\nsimulation.process_graph()\r\n```\r\n\r\n![Simulation](./multimedia/simulation_process_graph.png)\r\n\r\n### Start Simulation\r\n\r\nYou can simulate and have different simulation time values or you can create a confidence interval for your process\r\n\r\n#### Run Simulation\r\n\r\nSimulate several scenarios of your complete process\r\n\r\n```python\r\n# Run Simulation\r\nsimulation.run(number_of_simulations=100)\r\n\r\n# After run\r\nsimulation: pandas.Dataframe\r\n```\r\n\r\n### Review Simulation Metrics by Stage\r\n\r\nIf you want to review average time and standard deviation by stage run this line of code\r\n\r\n```python\r\n# Review simulation metrics\r\nsimulation.simulation_metrics() -> pandas.Dataframe\r\n```\r\n\r\n#### Run confidence interval\r\n\r\nIf you want to have a confidence interval for the simulation metrics, run the following line of code\r\n\r\n```python\r\n# Confidence interval for Simulation metrics\r\nsimulation.run_confidence_interval(\r\n confidence_level=0.99,\r\n number_of_simulations=100,\r\n replications=10,\r\n) -> pandas.Dataframe\r\n```\r\n\r\n## Queue Simulation\r\n\r\nIf you need to simulate queues run the following code:\r\n\r\n```python\r\nfrom phitter import simulation\r\n\r\n# Create a simulation process instance\r\nsimulation = simulation.QueueingSimulation(\r\n a=\"exponential\",\r\n a_paramters={\"lambda\": 5},\r\n s=\"exponential\",\r\n s_parameters={\"lambda\": 20},\r\n c=3,\r\n)\r\n```\r\n\r\nIn this case we are going to simulate **a** (arrivals) with _exponential distribution_ and **s** (service) as _exponential distribution_ with **c** equals to 3 different servers.\r\n\r\nBy default Maximum Capacity **k** is _infinity_, total population **n** is _infinity_ and the queue discipline **d** is _FIFO_. As we are not selecting **d** equals to \"PBS\" we don't have any information to add for **pbs_distribution** nor **pbs_parameters**\r\n\r\n### Run the simulation\r\n\r\nIf you want to have the simulation results\r\n\r\n```python\r\n# Run simulation\r\nsimulation = simulation.run(simulation_time = 2000)\r\nsimulation: pandas.Dataframe\r\n```\r\n\r\nIf you want to see some metrics and probabilities from this simulation you should use::\r\n\r\n```python\r\n# Calculate metrics\r\nsimulation.metrics_summary() -> pandas.Dataframe\r\n\r\n# Calculate probabilities\r\nnumber_probability_summary() -> pandas.Dataframe\r\n```\r\n\r\n### Run Confidence Interval for metrics and probabilities\r\n\r\nIf you want to have a confidence interval for your metrics and probabilities you should run the following line\r\n\r\n```python\r\n# Calculate confidence interval for metrics and probabilities\r\nprobabilities, metrics = simulation.confidence_interval_metrics(\r\n simulation_time=2000,\r\n confidence_level=0.99,\r\n replications=10,\r\n)\r\n\r\nprobabilities -> pandas.Dataframe\r\nmetrics -> pandas.Dataframe\r\n```\r\n\r\n</details>\r\n\r\n## Contribution\r\n\r\nIf you would like to contribute to the Phitter project, please create a pull request with your proposed changes or enhancements. All contributions are welcome!\r\n",
"bugtrack_url": null,
"license": "The MIT License (MIT) Copyright (c) 2024 Sebasti\u00e1n Jos\u00e9 Herrera Monterrosa, Carlos Andr\u00e9s M\u00e1smela Pinilla Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
"summary": "Find the best probability distribution for your dataset and simulate processes and queues",
"version": "1.0.0",
"project_urls": {
"Documentation": "https://github.com/phitterio/phitter-kernel",
"Homepage": "https://phitter.io",
"Repository": "https://github.com/phitterio/phitter-kernel"
},
"split_keywords": [
"scientific",
" engineering",
" mathematics",
" artificial intelligence",
" software development",
" python modules"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2e9528525d4f3fc91b2756da7d67df01b1a172ecd9506c81bd72813cf58774a6",
"md5": "b5d1f3f6704b5121f32ec0511d0f2355",
"sha256": "35376547c3557b04b42b564506c37ab1fca5d2c155516d2052c3e64132184cbd"
},
"downloads": -1,
"filename": "phitter-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b5d1f3f6704b5121f32ec0511d0f2355",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 260413,
"upload_time": "2024-11-06T02:14:52",
"upload_time_iso_8601": "2024-11-06T02:14:52.677732Z",
"url": "https://files.pythonhosted.org/packages/2e/95/28525d4f3fc91b2756da7d67df01b1a172ecd9506c81bd72813cf58774a6/phitter-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e098aeef6f51ece0d22ef4f12cb998bcd688b6c5bd89df69c2eacd11eb87377a",
"md5": "d8aff79e94ceec1ae5571cf468708fcf",
"sha256": "9d376fdfa0957320b40402909602072e8bde45ed75401a7fff8f85dc4d7315bc"
},
"downloads": -1,
"filename": "phitter-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "d8aff79e94ceec1ae5571cf468708fcf",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 123698,
"upload_time": "2024-11-06T02:14:56",
"upload_time_iso_8601": "2024-11-06T02:14:56.916270Z",
"url": "https://files.pythonhosted.org/packages/e0/98/aeef6f51ece0d22ef4f12cb998bcd688b6c5bd89df69c2eacd11eb87377a/phitter-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-06 02:14:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "phitterio",
"github_project": "phitter-kernel",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "phitter"
}