# HG changeset patch # User Nicolas Saunier # Date 1328731350 18000 # Node ID 2788b282767043b71b6de8830cee3e678369dc03 # Parent aeab0b88c9b690070cb1294c82dae3578f4b4a8e simple cumulatie function distribution computation diff -r aeab0b88c9b6 -r 2788b2827670 python/utils.py --- a/python/utils.py Tue Dec 20 00:31:37 2011 -0500 +++ b/python/utils.py Wed Feb 08 15:02:30 2012 -0500 @@ -69,6 +69,16 @@ def nSamples(self): return sum(self.counts) +def cumulativeDensityFunction(sample): + 'Returns the cumulative density function of the sample of a random variable' + from numpy.core.multiarray import array + from numpy.lib.function_base import unique + from numpy.core.fromnumeric import sum + a = array(sample) + a.sort() + xaxis = unique(a) + counts = [sum(a <= x) for x in xaxis] + return xaxis, counts class EmpiricalDiscreteDistribution(EmpiricalDistribution): '''Class to represent a sample of a distribution for a discrete random variable