Morlock Morlock - 11 months ago 82
Python Question

Statistics: combinations in Python

I need to compute combinatorials (nCr) in Python but cannot find the function to do that in

math
,
numpy
or
stat
libraries. Something like a function of the type:

comb = calculate_combinations(n, r)


I need the number of possible combinations, not the actual combinations, so
itertools.combinations
does not interest me.

Finally, I want to avoid using factorials, as the numbers I'll be calculating the combinations for can get too big and the factorials are going to be monstrous.

This seems like a REALLY easy to answer question, however I am being drowned in questions about generating all the actual combinations, which is not what I want. :)

Many thanks

Answer Source

See scipy.misc.comb. When exact is False, it uses the gammaln function to obtain good precision without taking much time. In the exact case it returns an arbitrary-precision integer, which might take a long time to compute.