ANN: Lea 3.0.0 beta 2

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

ANN: Lea 3.0.0 beta 2

Pierre Denis
Lea 3.0.0.beta.2 is now released!

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

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, ...

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

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 project page -> http://bitbucket.org/piedenis/lea
Documentation    -> http://bitbucket.org/piedenis/lea/wiki/Home
Lea 3 on PyPI    -> http://pypi.org/project/lea/3.0.0.beta.1


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

Pierre Denis


--
https://mail.python.org/mailman/listinfo/python-announce-list

        Support the Python Software Foundation:
        http://www.python.org/psf/donations/