在Python中使用NumPy在线性代数中把一个正方形矩阵提升到n的幂数
在这篇文章中,我们将讨论如何在Python中的线性代数中把一个正方形矩阵提高到n次方。
numpy.linalg.matrix_power()方法用于将一个正方形矩阵提高到n的幂。它将接受两个参数,第一个参数是一个使用NumPy数组创建的输入矩阵,第二个参数是指数n,它指的是幂,可以是零或非零的整数。
语法 : numpy.linalg.matrix_power(input_numpy_matrix,n)
参数:
- input_numpy_matrix是矩阵。
- n指的是整数值thar提高矩阵。
返回 :它将返回被提升到n次方的矩阵
示例 1
在这个例子中,我们要创建一个2行2列的二维数组(矩阵),并返回矩阵升至0次方、矩阵升至4次方、矩阵升至5次方。
# import numpy and matrix_power
import numpy
from numpy.linalg import matrix_power
# Create a 2D array
input_array = numpy.array([[3, 4], [4, 5]])
# Display array
print(input_array)
# Using numpy.linalg.matrix_power() to
# return raise 0 th power of matrix
print(matrix_power(input_array, 0))
print()
# Using numpy.linalg.matrix_power() to
# return raise 4 th power of matrix
print(matrix_power(input_array, 4))
print()
# Using numpy.linalg.matrix_power() to
# return raise 5 th power of matrix
print(matrix_power(input_array, 5))
输出:
[[3 4]
[4 5]]
[[1 0]
[0 1]]
[[1649 2112]
[2112 2705]]
[[13395 17156]
[17156 21973]]
示例 2
在这个例子中,我们要创建一个4行4列的二维数组(矩阵),并返回提升到0次方的矩阵、提升到4次方的矩阵和提升到5次方的矩阵。
# import numpy and matrix_power
import numpy
from numpy.linalg import matrix_power
# Create a 2D array
input_array = numpy.array(
[[3, 4, 3, 4], [4, 5, 2, 2], [1, 1, 0, -2],
[-4, 5, 4, -1]])
# Display array
print(input_array)
# Using numpy.linalg.matrix_power() to
# return raise 0 th power of matrix
print(matrix_power(input_array, 0))
print()
# Using numpy.linalg.matrix_power() to
# return raise 4 th power of matrix
print(matrix_power(input_array, 4))
print()
# Using numpy.linalg.matrix_power() to
# return raise 5 th power of matrix
print(matrix_power(input_array, 5))
输出:
[[ 3 4 3 4]
[ 4 5 2 2]
[ 1 1 0 -2]
[-4 5 4 -1]]
[[1 0 0 0]
[0 1 0 0]
[0 0 1 0]
[0 0 0 1]]
[[2229 3622 1887 1354]
[2460 4369 2238 1300]
[ 237 839 426 2]
[ 102 1206 864 441]]
[[17646 35683 19347 11032]
[21894 40423 21318 12802]
[ 4485 5579 2397 1772]
[ 4230 9507 4482 651]]