Skip to main content

A basic statistics module to compute MLEs / probabilities

Project description

About

applied_stats is a Python library that implements various statistical distributions and methods in Python. The continuous_distributions module supports plotting and calculating probabilities for normal, chi-squared, t, and F distributions, and the mle module can calculate various maximum likelihood estimators based on particular distributions. I plan to continue development of this to add new functionality and modules in the future.

The project was inspired while I took MAT 561 (Probability) and MAT 562 (Mathematical Statistics) at the University of Louisville. The goal of this is to provide simple tools to work with applied statistics, while also aiding my own understanding by applying theoretical techniques learned during class.

Please feel free to submit PRs or Issues if you'd like!

Installation

Run the following to install the applied-stats:

$ pip install applied-stats

This has been tested on Windows 10 and Ubuntu 21.04; will test on macOS soon.

Usage

Follow these examples to start plotting and calculating probabilities. Various examples, including the ones below, can also be found in the Demonstration Jupyter Notebook

Generate some plots and calculate some probabilities:

>>> from applied_stats import continuous_distributions
>>> a = Norm_rv(0,1)
>>> a.plot_pdf()
>>> a.probability_calc()

Note: pypi has some difficulty rendering the below plot images, they can be viewed on GitHub. link

>>> q = ChiSq_rv(4,crit_value=7)
>>> q.plot_pdf(cv_probability=True)
>>> q.probability_calc()

link

Calculate a two-tailed Chi-Sq distribution and plot:

>>> z = st.ChiSq_rv(3)
>>> z.plot_pdf(left_cv=1, right_cv=7, cv_probability=True, two_tail=True)
>>> z.probability_calc()

link

Calculate the numeric MLE of several common distributions:

>>> from stats_tools import mle 
>>> a = [1,3,2,5,6,7,2,3,4,5]
>>> mle.binomial(10, a)
>>> 0.38

>>> b = [1.2,4.3,2.3,6.8,2.4,3.6]
>>> mle.exponential(b) 
>>> 3.4333333333333336

A basic hypothesis test

>>> data = ['R', 'B', 'R', 'B', 'R', 'B', 'R', 'B', 'R', 'B']
>>> a = gen_test(data, 'H0 is that there are 5 red marbles in a bag')
>>> a.run_test(n=4, 
           counter='R', 
           accept_left=3, 
           accept_right=4)

>>> 'Do not reject H0. Count is 3'

Tests

Run the tests from the command line with python test.py -v

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

applied_stats-1.0.0.tar.gz (96.1 kB view details)

Uploaded Source

Built Distribution

applied_stats-1.0.0-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file applied_stats-1.0.0.tar.gz.

File metadata

  • Download URL: applied_stats-1.0.0.tar.gz
  • Upload date:
  • Size: 96.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.6

File hashes

Hashes for applied_stats-1.0.0.tar.gz
Algorithm Hash digest
SHA256 cc64461c15eacb750772134ba70bf28f7fc2a25b147a4e67cb15a1af86d48018
MD5 297eff6599742dab4e6fa7b1b4df7dc7
BLAKE2b-256 c1e968b6672f2328d76bf67f394215aff672a64f9f4709bcd404ed00e5945d21

See more details on using hashes here.

File details

Details for the file applied_stats-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: applied_stats-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.6

File hashes

Hashes for applied_stats-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c4a0d2fdf84b47970dda8d1dc17d75a745c03a7e82f54527d01eb7874c80cf01
MD5 e2a01604285920962f302fc36265fe91
BLAKE2b-256 d8ede0e5704e5305d3b67256df26c5861e1aeb5e8a79e23c732b828defe031fb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page