我们可以使用numpy矩阵实现以下矩阵运算。
我们在此处执行的运算(此处x和y是矩阵)...
运作方式 | 功能 | 运算符 |
---|---|---|
添加矩阵元素 | add(x,y) | x + y |
减去矩阵元素 | subtract(x,y) | y |
乘法矩阵元素 | multiply(x,y) | x * y |
划分矩阵元素 | divide(x,y) | x / y |
矩阵的乘积 | dot(x,y) | --- |
矩阵元素的平方根 | sqrt(x) | --- |
示例
# 用于矩阵运算的Python程序 # 导入numpy import numpy as np mat1 = np.array([[10,20,30],[40,50,60],[70,80,90]]) mat2 = np.array([[1,2,3],[4,5,6],[7,8,9]]) # 加矩阵 print("mat1+mat2...") print(mat1+mat2) print("np.add(mat1,mat2)...") print(np.add(mat1,mat2))print() # 打印换行符 # 减去矩阵 print("mat1-mat2...") print(mat1-mat2) print("np.subtract(mat1,mat2)...") print(np.subtract(mat1,mat2))print() # 打印换行符 # 除法矩阵 print("mat1/mat2...") print(mat1/mat2) print("np.divide(mat1,mat2)...") print(np.divide(mat1,mat2))print() # 打印换行符 # 乘法矩阵 print("mat1*mat2...") print(mat1*mat2) print("np.multiply(mat1,mat2)...") print(np.multiply(mat1,mat2))print() # 打印换行符 # 产生矩阵 print("np.dot(mat1,mat2)...") print(np.dot(mat1,mat2))print() # 打印换行符 # 矩阵元素的平方根 print("np.sqrt(mat1)...") print(np.sqrt(mat1))print() # 打印换行符 # 矩阵元素的平方根 print("np.sqrt(mat2)...") print(np.sqrt(mat2))print() # 打印换行符
输出结果
mat1+mat2... [[11 22 33] [44 55 66] [77 88 99]] np.add(mat1,mat2)... [[11 22 33] mat1+mat2... [[11 22 33] [44 55 66] [77 88 99]] mat1+mat2... [[11 22 33] [44 55 66] [77 88 99]] np.add(mat1,mat2)... [[11 22 33] [44 55 66] [77 88 99]] mat1-mat2... [[ 9 18 27] [36 45 54] [63 72 81]] np.subtract(mat1,mat2)... [[ 9 18 27] [36 45 54] mat1+mat2... [[11 22 33] [44 55 66] [77 88 99]] np.add(mat1,mat2)... [[11 22 33] [44 55 66] [77 88 99]] mat1-mat2... [[ 9 18 27] [36 45 54] [63 72 81]] np.subtract(mat1,mat2)... [[ 9 18 27] [36 45 54] [63 72 81]] mat1/mat2... [[10. 10. 10.] [10. 10. 10.] [10. 10. 10.]] np.divide(mat1,mat2)... [[10. 10. 10.] [10. 10. 10.] [10. 10. 10.]] mat1*mat2... [[ 10 40 90] [160 250 360] [490 640 810]] np.multiply(mat1,mat2)... [[ 10 40 90] [160 250 360] [490 640 810]] np.dot(mat1,mat2)... [[ 300 360 420] [ 660 810 960] [1020 1260 1500]] np.sqrt(mat1)... [[3.16227766 4.47213595 5.47722558] [6.32455532 7.07106781 7.74596669] [8.36660027 8.94427191 9.48683298]] np.sqrt(mat2)... [[1. 1.41421356 1.73205081] [2. 2.23606798 2.44948974] [2.64575131 2.82842712 3. ]]