[파이썬][numpy] numpy `linalg.inv` 함수

The linalg.inv function in the numpy library is used to compute the inverse of a square matrix. This function can be particularly useful in various scientific and engineering applications where matrix operations are required.

Syntax

The syntax for using the linalg.inv function is as follows:

numpy.linalg.inv(a)

Where a is the input matrix.

Example

Let’s consider a simple example to understand how to use the linalg.inv function.

import numpy as np

# Create a 2x2 matrix
a = np.array([[4, 7], [2, 6]])

# Compute the inverse using linalg.inv
inv_a = np.linalg.inv(a)

# Output the inverse matrix
print(inv_a)

In this example, we have created a 2x2 matrix a using the np.array function. We then use the np.linalg.inv function to compute the inverse matrix inv_a. Finally, we print the inverse matrix.

The output of the above code will be:

[[ 0.6 -0.7]
 [-0.2  0.4]]

Handling Exceptions

It is important to note that the linalg.inv function raises a LinAlgError exception if the input matrix is singular or not square. To handle such exceptions, it is recommended to use a try-except block as shown in the following example:

import numpy as np

# Create a 2x3 matrix (not square)
a = np.array([[1, 2, 3], [4, 5, 6]])

try:
    inv_a = np.linalg.inv(a)
    print(inv_a)
except np.linalg.LinAlgError:
    print("Input matrix is not invertible.")

In this example, as the input matrix a is not square, the LinAlgError exception is raised. We catch the exception in the except block and print a custom error message.

Conclusion

The numpy.linalg.inv function provides a convenient way to compute the inverse of a square matrix in Python. It is a powerful tool in linear algebra and can be used in various numerical computations. Remember to handle exceptions appropriately when working with this function to avoid any unexpected issues.