Skip to main content

A scipy-like implementation of the PERT distribution

Project description

PertDist

A scipy-like implementation of the PERT distribution.

Motivation

In my current job I work a fair amount with the PERT (also known as Beta-PERT) distribution, but there's currently no implementation of this in scipy. To make up the deficency I crafted up my own PERT distribution class, leveraging numpy and scipy to properly flesh out the functionality. The API is heavily modeled after the scipy.stats methods API's.

Build Status

TODO: when I figure out how in blazes to add these ;-)

Installation

Installation is straightforward: pip install pertdist

Code Example

Usage is very similar to what you would find in a scipy.stats class as well:

from pert import PERT
import seaborn as sns

pert = PERT(10, 190, 200)
sns.kdeplot(pert.rvs(10000))

On running this you should see a chart of a heavily low/left skewed distribution (recommended running in Jupyter or Spyder).

Roadmap

  • Develop unit tests
    • Especially around flexible identification of various data types, eg: accepting DataFrames, Series, lists, etc.
  • Build out the following scipy function analogues:
    • sf
    • logsf
    • ppf
    • isf
    • moment
    • entropy
    • fit
    • expect
    • median
    • mean
    • var
    • std
    • stats (implemented, but needs refinement)

A version history is located here

Contributing

Since this is my first published project, I'm pretty relaxed about contributions. Feel free to send me a pull request with any updates/changes/etc you have in mind!

Note that I do follow Vincent Driessen's Git Branching Model rather rigorously. If you do contribute, it'll most likely be pulled into the develop branch.

Also, I'm rather fond of Semantic Commit Messages, but I'm only picky about those for my own contributions, feel free to use wahtever commit message style you'd like.

License

This project uses the GNU General Public License.

Short version: Have fun and use it for whatever, just make sure to attribute me for it (-:

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

pertdist-0.1.1.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

pertdist-0.1.1-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file pertdist-0.1.1.tar.gz.

File metadata

  • Download URL: pertdist-0.1.1.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5

File hashes

Hashes for pertdist-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5769d38caf01a9ffccb17c91c761718d3e40d0ca4f4acfb97ce90e36670763f2
MD5 a8326fe4841a8d9c7a18e62e7aa72d50
BLAKE2b-256 5470c9b6de18f125fec7c61428e985ec36d3644de54d1c8cfc6f2b406097057d

See more details on using hashes here.

File details

Details for the file pertdist-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: pertdist-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5

File hashes

Hashes for pertdist-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 573941618a9fdb4d40fe3d8f4bb459b73449cc699cf3913f99d02964b05febd0
MD5 3940c42215be27a592b66fe26ed6cda9
BLAKE2b-256 780447ae039fba96c345cedf6fa793a8c0f7441f3fd126ee8fd95a97eeb2f8fc

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