Published by the Foundation for Open Access Statistics Editors-in-chief: Bettina Grün, Torsten Hothorn, Rebecca Killick, Edzer Pebesma, Achim Zeileis    ISSN 1548-7660; CODEN JSSOBK
Authors: Marcin Korzeń, Szymon Jaroszewicz
Title: PaCAL: A Python Package for Arithmetic Computations with Random Variables
Abstract: In this paper we present PaCAL, a Python package for arithmetical computations on random variables. The package is capable of performing the four arithmetic operations: addition, subtraction, multiplication and division, as well as computing many standard functions of random variables. Summary statistics, random number generation, plots, and histograms of the resulting distributions can easily be obtained and distribution parameter fitting is also available. The operations are performed numerically and their results interpolated allowing for arbitrary arithmetic operations on random variables following practically any probability distribution encountered in practice. The package is easy to use, as operations on random variables are performed just as they are on standard Python variables. Independence of random variables is, by default, assumed on each step but some computations on dependent random variables are also possible. We demonstrate on several examples that the results are very accurate, often close to machine precision. Practical applications include statistics, physical measurements or estimation of error distributions in scientific computations.

Page views:: 3374. Submitted: 2012-02-14. Published: 2014-05-06.
Paper: PaCAL: A Python Package for Arithmetic Computations with Random Variables     Download PDF (Downloads: 7016)
PaCal-1.5.tar.gz: Python source package Download (Downloads: 311; 174KB) Python example code from the paper Download (Downloads: 292; 3KB)
v57i10-replication.txt: Replication instructions Download (Downloads: 344; 195B)

DOI: 10.18637/jss.v057.i10

This work is licensed under the licenses
Paper: Creative Commons Attribution 3.0 Unported License
Code: GNU General Public License (at least one of version 2 or version 3) or a GPL-compatible license.