You will learn how to calculate the factorial of an array in Numpy.

## How to Calculate the Factorial in Numpy

In Numpy, it is very easy to calculate the factorial of a single number. Just use the math.factorial() method.

import numpy as np my_number = 7 print(f"The factorial of {my_number} is {np.math.factorial(my_number)}.")

Output:

The factorial of 7 is 5040.

## Problem with Computing the Factorial of Array

Calculating the factorial for a single number is simple. However, this method will not work for the array factorial.

import numpy as np my_array = np.array([[1,2,3],[4,5,6]]) print(f"The factorial of my array is {np.math.factorial(my_array)}.")

You will get the following error:

Traceback (most recent call last): File "C:\Users\pythoneo\PycharmProjects\venv\myfile.py", line 5, inprint(f"The factorial of my array is {np.math.factorial(my_array)}.") TypeError: only integer scalar arrays can be converted to a scalar index Process finished with exit code 1

You need another way to calculate the factorial of a array.

## How to Calculate the Factorial of an Array in Numpy

The scipy.special.factorial() function can be used to calculate the factorial of an array.

import numpy as np import scipy.special my_array = np.array([[1,2,3],[4,5,6]]) my_factorial = scipy.special.factorial(my_array) print(f"The factorial of my array is \n{my_factorial}")

Output:

The factorial of my array is [[ 1. 2. 6.] [ 24. 120. 720.]]