Skip to main content

A library for Probabilistic Graphical Models

Project description


Build Downloads codecov Version Python Version License asv

Join the pgmpy Discord server Read the Docs Examples Tutorial

pgmpy is a Python package for working with Bayesian Networks and related models such as Directed Acyclic Graphs, Dynamic Bayesian Networks, and Structural Equation Models. It combines features from causal inference and probabilistic inference literature to allow users to seamlessly work between them. It implements algorithms for structure learning, causal discovery, parameter estimation, probabilistic and causal inference, and simulations.

Examples

  • Creating a Bayesian Network: view | Open In Colab
  • Structure Learning/Causal Discovery: view | Open In Colab
  • Parameter Learning: view | Open In Colab
  • Probabilistic Inference: view | Open In Colab
  • Causal Inference: view | Open In Colab
  • Extending pgmpy: view | Open In Colab

Citing

If you use pgmpy in your scientific work, please consider citing us:

Ankur Ankan, & Johannes Textor (2024). pgmpy: A Python Toolkit for Bayesian Networks. Journal of Machine Learning Research, 25(265), 1–8.

Bibtex:

@article{Ankan2024,
  author  = {Ankur Ankan and Johannes Textor},
  title   = {pgmpy: A Python Toolkit for Bayesian Networks},
  journal = {Journal of Machine Learning Research},
  year    = {2024},
  volume  = {25},
  number  = {265},
  pages   = {1--8},
  url     = {http://jmlr.org/papers/v25/23-0487.html}
}

Development

Code

The latest codebase is available in the dev branch of the repository.

Building from Source

To install pgmpy from the source code:

$ git clone https://github.com/pgmpy/pgmpy
$ cd pgmpy/
$ pip install -r requirements.txt
$ python setup.py install

To run the tests, you can use pytest:

$ pytest -v pgmpy

If you face any problems during installation let us know, via issues, mail or at our discord channel.

Contributing

Please feel free to report any issues on GitHub: https://github.com/pgmpy/pgmpy/issues.

Before opening a pull request, please have a look at our contributing guide If you face any problems in pull request, feel free to ask them on the mailing list or gitter.

If you would like to implement any new features, please have a discussion about it before starting to work on it. If you are looking for some ideas for projects, we a list of mentored projects available at: https://github.com/pgmpy/pgmpy/wiki/Mentored-Projects.

Building Documentation

We use sphinx to build the documentation. Please refer: https://github.com/pgmpy/pgmpy/wiki/Maintenance-Guide#building-docs for steps to build docs locally.

License

pgmpy is released under MIT License. You can read about our license at here

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

pgmpy_no_torch-1.0.3.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pgmpy_no_torch-1.0.3-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

Details for the file pgmpy_no_torch-1.0.3.tar.gz.

File metadata

  • Download URL: pgmpy_no_torch-1.0.3.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for pgmpy_no_torch-1.0.3.tar.gz
Algorithm Hash digest
SHA256 67baf7491f7c546662fb22c23fc32c9839a8d80f3dca017157891ec595828acc
MD5 5c4594dc63a2df0953e9ac9e5a78fcd4
BLAKE2b-256 17a927627d951d1cc7d24965e24e24c75cec58188d096ebd94f9070451363a58

See more details on using hashes here.

File details

Details for the file pgmpy_no_torch-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: pgmpy_no_torch-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for pgmpy_no_torch-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5f6a4aade3be4c5782729e50bc8c1693fff6b33d6bfd4e26ceb27a1c2ca14e45
MD5 d948f45fbe7b1fbf822c7a68aeeca9f6
BLAKE2b-256 c9da0d7862404597957b086a88670c7c98415e16fa555d7719aa5e03f6b84be4

See more details on using hashes here.

Supported by

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