Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python.announce > #2897

ANN: Lea 3.0 released

From "Pierre Denis" <pie.denis@skynet.be>
Newsgroups comp.lang.python.announce
Subject ANN: Lea 3.0 released
Date 2018-06-27 16:44 +0200
Message-ID <mailman.158.1530147860.7721.python-announce-list@python.org> (permalink)
References <001501d40e25$5af15050$10d3f0f0$@denis@skynet.be>

Show all headers | View raw


Lea 3.0 final is now released!

---> http://pypi.org/project/lea/3.0.0

What is Lea?
------------
Lea is a Python module aiming at working with discrete probability
distributions in an intuitive way.

It allows you modeling a broad range of random phenomena: gambling, weather,
finance, etc. More generally, Lea may be used for any finite set of discrete
values having known probability: numbers, booleans, date/times, symbols, .
Each probability distribution is modeled as a plain object, which can be
named, displayed, queried or processed to produce new probability
distributions.

Lea also provides advanced functions and Probabilistic Programming (PP)
features; these include conditional probabilities, Bayesian networks, joint
probability distributions, Markov chains and symbolic computation.

Lea can be used for AI, machine learning, education, ...

LGPL - Python 2.6+ / Python 3 supported

What's new in Lea 3?
--------------------
Compared to latest version (2.3.5), many things have changed to extend the
usability and openness of the library. To name a few:

* ability to choose between different probability representations: floats,
fractions and decimals
* symbolic computation: Lea can now calculate probability *formula* using
the SymPy library (http://www.sympy.org)
* simpler API and compliance with PEP8 naming convention
* revamped tutorials and examples ->
http://bitbucket.org/piedenis/lea/wiki/Home
* paper on the "Statues" algorithm used in Lea ->
http://arxiv.org/abs/1806.09997

Here is a short sample. A biased coins is flipped with 1/4 chance to be
'head'. Suppose that this coin is thrown 6 times. What is the probability to
get no more than two 'heads'? Here is how you could make this calculation in
Lea, using successively float, fraction and symbolic representations:

  print (P(lea.binom(6,1/4) <= 2))
  # -> 0.83056640625
  print (P(lea.binom(6,'1/4') <= 2))
  # -> 1701/2048
  print (P(lea.binom(6,'p') <= 2))
  # -> (p - 1)**4*(10*p**2 + 4*p + 1))
  print (P(lea.binom(6,'p') <= 2).subs('p',1/4))
  # -> 0.830566406250000

To learn more...
----------------
Lea 3 on PyPI     -> http://pypi.org/project/lea/3.0.0
Lea project page  -> http://bitbucket.org/piedenis/lea
Documentation     -> http://bitbucket.org/piedenis/lea/wiki/Home
Statues algorithm -> http://arxiv.org/abs/1806.09997

With the hope that Lea can make the Universe less hazardous,

Pierre Denis


Back to comp.lang.python.announce | Previous | Next | Find similar | Unroll thread


Thread

ANN: Lea 3.0 released "Pierre Denis" <pie.denis@skynet.be> - 2018-06-27 16:44 +0200

csiph-web