Skip to main content

Bayesian networks and other Probabilistic Graphical Models.

Project description

pyAgrum

pyAgrum is a scientific C++ and Python library dedicated to Bayesian Networks and other Probabilistic Graphical Models. It provides a high-level interface to the part of aGrUM allowing to create, model, learn, use, calculate with and embed Bayesian Networks and other graphical models. Some specific (python and C++) codes are added in order to simplify and extend the aGrUM API.

Example

import pyAgrum as gum

# Creating BayesNet with 4 variables
bn=gum.BayesNet('WaterSprinkler')
print(bn)

# Adding nodes the long way
c=bn.add(gum.LabelizedVariable('c','cloudy ?',["Yes","No"]))
print(c)

# Adding nodes the short way
s, r, w = [ bn.add(name, 2) for name in "srw" ]
print (s,r,w)
print (bn)

# Addings arcs c -> s, c -> r, s -> w, r -> w
bn.addArc(c,s)
for link in [(c,r),(s,w),(r,w)]:
bn.addArc(*link)
print(bn)

# or, equivalenlty, creating the BN with 4 variables, and the arcs in one line
bn=gum.fastBN("w<-r<-c{Yes|No}->s->w")

# Filling CPTs
bn.cpt("c").fillWith([0.5,0.5])
bn.cpt("s")[0,:]=0.5 # equivalent to [0.5,0.5]
bn.cpt("s")[{"c":1}]=[0.9,0.1]
bn.cpt("w")[0,0,:] = [1, 0] # r=0,s=0
bn.cpt("w")[0,1,:] = [0.1, 0.9] # r=0,s=1
bn.cpt("w")[{"r":1,"s":0}] = [0.1, 0.9] # r=1,s=0
bn.cpt("w")[1,1,:] = [0.01, 0.99] # r=1,s=1
bn.cpt("r")[{"c":0}]=[0.8,0.2]
bn.cpt("r")[{"c":1}]=[0.2,0.8]

# Saving BN as a BIF file
gum.saveBN(bn,"WaterSprinkler.bif")

# Loading BN from a BIF file
bn2=gum.loadBN("WaterSprinkler.bif")

# Inference
ie=gum.LazyPropagation(bn)
ie.makeInference()
print (ie.posterior("w"))

# Adding hard evidence
ie.setEvidence({"s": 1, "c": 0})
ie.makeInference()
print(ie.posterior("w"))

# Adding soft and hard evidence
ie.setEvidence({"s": [0.5, 1], "c": 0})
ie.makeInference()
print(ie.posterior("w"))

LICENSE

Copyright (C) 2005,2023 by Pierre-Henri WUILLEMIN et Christophe GONZALES {prenom.nom}_at_lip6.fr

The aGrUM/pyAgrum library and all its derivatives are distributed under the LGPL3 license, see https://www.gnu.org/licenses/lgpl-3.0.en.html.

Authors

  • Pierre-Henri Wuillemin

  • Christophe Gonzales

Maintainers

  • Lionel Torti

  • Gaspard Ducamp

Release history Release notifications | RSS feed

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.8Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 01863c7273d81bea2fa449fffa13c59dc62a7a0ca4870537804eb09d5258c9f4
MD5 408ad52d229082dc99673841caea6cdd
BLAKE2b-256 f05b52b7005855247fb6d0871bb14ada461b3eb8126691ed4ba12fa150160ad0

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6c8e6f25824c16b289f34d54a66ec72486f9ff1bd1f97ff5c18f4b149964659d
MD5 454659c454d5e868e75c7bd3d1021149
BLAKE2b-256 7397b19210f8bca4a03513f8f576d102aec4f1792fa5f86ebba567c07d0257c1

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ffbf402ee0640f51db3ceab134dd5d0e84fdf83f2ba79cd1409850a27a3a3a21
MD5 b2036f62ff454a74af3e928274b75e4f
BLAKE2b-256 6b4b5623e716eee6355139e1ef11bcff8f4ff2614c0b7cddae33aa9a7425ec75

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 882dfc9397d33c66f6a3f587a8426d143624f81e5a2c2eb0fa285ab9881750d5
MD5 3fc5b962f17a52a084e338262d1e840e
BLAKE2b-256 81de8a493a397b91eab60d87457e2c2eaf251fb3bcbbea01d529eb647a50b773

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 10e81345a15000a0b96a0022c8ed006f28f1e69d9659e1246a42431e2d8fd525
MD5 47e70807b31d32cad5b7f0c1bd9d5788
BLAKE2b-256 fd3bae40bccdc87171d85cc272501ed709d294ea6d550a7d55882b8d178a9176

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ed4b7ce9b996fa062755ad683b4b4bb1d48292605e7d8c676e606696e86a6a15
MD5 2ab22463b4a80320fcc25a9dbe8b70aa
BLAKE2b-256 ee9e8e064f7f320b2adfa1361c7e505b5f76532fa836d88e82014695604995a0

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 419f1761fd46c46042666736e60cdefcee20c690b055c5e1fa31bfdde3e0099f
MD5 78c9da45f6e68c619aa8021de6311f2f
BLAKE2b-256 323c2beecdd5d3226085b9f26296d4889ab48e54744da3ad29874e77f4a18812

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a28e991bf7e804e414365a2f983b2215c85451bd4008f501829aa0aff0252917
MD5 7bb19203de095668aad467d3db2e1b64
BLAKE2b-256 77f75697798d4f1bbf77de2d1df0f096d926dee69071b6d6f79269075ca1d84f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1563eaca88adc14562a221a6e1994e3a89d1e1f5900fa7cd4b3097ce4ca5ea3a
MD5 fa2c4863b7271037254579b88d9bfcdd
BLAKE2b-256 72c9776794ed9dfe27c1191106736ab26a45d1a1bb3936cd1893d6af5f83dccb

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e581181da3652f914909fe717bef5bd7bc0bbf9b63730e7948f22c94dfda15cf
MD5 479fad80d8c2a74e8dad2475349d1219
BLAKE2b-256 c068a62017af92b9457ec1632a5b22ff95a532351132052a678125af3b4a519c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 cbc2d3c87babd816ba0f2129dabb46f8a1bf21960c3e82b58011b499cdbde440
MD5 6dc9405e72ec39f49a1f83d76d4ce658
BLAKE2b-256 7030273c665f3faade376fc391934dea15fe33c1455f9fbf27707b32f653c3bc

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 058cb4533496b13a07ca860880614cd0817f4fa619e3e8da93ea2d3d486257c7
MD5 08e7da8a08b79d726ec2994f49672d4c
BLAKE2b-256 20f73649af939ec32b3226ed5edc3a4cd1b8c98da14ce5f86905911fcc6a6d41

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d2c404649d3dadc4803b3b482ce2cf617149020331129a034f2c902aa077104b
MD5 31daaf60843d85809dfeaa725209ab1c
BLAKE2b-256 592925163eba01e7ba839dc7dcb31772e4ee3c8bc4cd1ffd67ecd3fbb7acdb89

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 16c0fe8656535214d5220ca4fa513d144111c876e54fac644bb1d8a31098ade3
MD5 bad3eaf3504d02d578e66e97b6a13838
BLAKE2b-256 5f6b68cc945ad4dd9e083530a4a45ca64757963b31437539a223981a822fbbb5

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 300ced7839542665166d9b565fd6905bb4892d03592b3fbe86c94f1d13dfb302
MD5 9833e95ab69303b78df3a439cd1bcb2c
BLAKE2b-256 3225ce36c2730aa7f57fe8b935395ffc627b005a55c7b18ada754ae4aa10301d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e91fa05cefee1cfed1d936a93bfcdfe0659b6894faed2647f027255b6b72dd68
MD5 356d988aa4e3205f4e8248db776e4584
BLAKE2b-256 dded956762cba02cb63a60910bee18d57939fd3cf2865fa810b71a5a3941e841

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 efeca19940a8f2cedfa56db379da76abded7a8e78c3637f6be402c7078528fc7
MD5 80d17c62f07f09ee2b937a844ec39e3c
BLAKE2b-256 da5268b9b3f65c8016ba2e4a7a3de0b7370d8c8a784f7b28ff7c2cc9b09602a1

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c09fb5799bed85307b62f6cc10bc6dea24a9bd67a22f067d29d52b08ef13dcae
MD5 c46c53ff1de6e862f1e3c759c4af10a7
BLAKE2b-256 be03d65b883b5720e7f6be8766b5a766833a396af89c39318714004ef323999a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1b9b0cff0ea0e44740eb9869059a1c0302e9e80b459f073aea09f6a2181eecb1
MD5 686839b19f6209500675789b778ea547
BLAKE2b-256 2156834a911fd8d05c228221e1d032c87a10cba16dfe72f3d51d0bb5c8323119

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e975e87908b286bfe9b2244d97ce745b7e5cf589677390062a1b22dafe1d2d27
MD5 1b7bbfbb8a525f024e69301950c06376
BLAKE2b-256 c5820eb12d41b16f55ddd392e5909b754ad23202244cf5308cd910541fd86519

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 df16fbd4bd17b8f79cf338ae6430468b80334615054e9ca3244f1de18fe49a1d
MD5 dd8b9326e43b062f70f329431d91e636
BLAKE2b-256 43fcc86a03a8737e29d540ae50da9f74007068ddc6548d26a1fc5f0f4fdb33c2

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3872368992ed1ef3a9ed017c495b11c861cbadb77c71064b0181c06e58e7bebc
MD5 63e29440132f4d97f94c6cd5da639ffa
BLAKE2b-256 7a5f812f1f32db8e37aecdfa0120571f42db5d151b5ada9cbc11e4ea79903f68

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 410101d984d83bf6baad6bf3f85a22f03367e68edce7273146c4915a09b9b553
MD5 1988940ceff85ae6b803ad9321e4d969
BLAKE2b-256 c6916ac676f5e95485df184d4825d18a6b43cf14402c67ed355e120ec7c8d38b

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9678a163af5578c401b34491c3fa0d100db264e4a0875a9006a48f2ca970216b
MD5 f532eb997972dc7cb38645e89b981df7
BLAKE2b-256 4323bec4626df0c948119758c9ddf781deb1d2141e9b3b7987bd69d102eae14f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405281715182293-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9ff03856da12272afb3aba22987bca426a92d62b83489997c487e85515d64577
MD5 581e927a43e769985a44f41767f8f966
BLAKE2b-256 53c56906498ff493c0b3f245adf358a04c8d77d548c7ee847c948a48e7b148d9

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