Time for action – calculating the factorial

The ndarray class has the prod method, which computes the product of the elements in an array. Perform the following steps to calculate the factorial:

  1. Calculate the factorial of eight. To do that, generate an array with values 1 to 8 and call the prod function on it.
    b = np.arange(1, 9)
    print "b =", b
    print "Factorial", b.prod()

    Check the result with your pocket calculator.

    b = [1 2 3 4 5 6 7 8]
    Factorial 40320

    This is nice, but what if we want to know all the factorials from 1 to 8?

  2. No problem! Call the cumprod method, which computes the cumulative product of an array.
    print "Factorials", b.cumprod()

    It's pocket calculator time again.

    Factorials [    1     2     6    24   120   720  5040 40320]

What just happened?

We used the prod and cumprod functions to calculate factorials (see ndarraymethods.py).

import numpy as np

a = np.arange(5)
print "a =", a
print "Clipped", a.clip(1, 2)

a = np.arange(4)
print a
print "Compressed", a.compress(a > 2)

b = np.arange(1, 9)
print "b =", b
print "Factorial", b.prod()

print "Factorials", b.cumprod()
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.149.26.176