您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 |

自学教程:python矩阵基本运算的实现

51自学网 2023-07-22 10:36:34
  python
这篇教程python矩阵基本运算的实现写得很实用,希望能帮到您。

一、Python 矩阵基本运算

引入 numpy 库

import numpy as np

1. python矩阵操作

1)使用 mat 函数创建一个 2X3矩阵

a = np.mat([[1, 2, 3], [4, 5, 6]])

 2)使用 shape 可以获取矩阵的大小

a.shape

 3)进行行列转换

a.T

4)使用二维数组代替矩阵来进行矩阵运算

b = np.array([[1, 2, 3], [4, 5, 6]])

 5) 加减法

a + ba - b

二、python矩阵乘法

1)使用二维数组创建两个矩阵A和B

A = np.array([[1, 2, 3], [4, 5, 6]])B = A.T

2)一个矩阵的数乘,其实就是矩阵的每一个元素乘以该数

2 * A

 3)dot 函数用于矩阵乘法,对于二维数组,它计算的是矩阵乘积,对于一维数组,它计算的是内积 

np.dot(A, B)

np.dot( B, A)

 4)再创建一个二维数组

C = np.array([[1, 2], [1, 3]])

5)验证矩阵乘法的结合性:( A B ) C = A ( B C ) (AB)C = A(BC)(AB)C=A(BC)

np.dot(np.dot(A, B), C)

np.dot(A, np.dot(B, C))

6)使用 eye 创建一个单位矩阵 

 三、python矩阵转置

1)A的转置

A.T

四、python求方阵的迹

1)A的迹

五、python求逆矩阵/伴随矩阵

逆矩阵的定义:

设A是数域上的一个n阶方阵,若在相同数域上存在另一个n阶矩阵B,使得: AB=BA=E。 则我们称B是A的逆矩阵,而A则被称为可逆矩阵。当矩阵A的行列式|A|不等于0时才存在可逆矩阵。  

1)创建一个方阵

A = np.array([[1, -2, 1], [0, 2, -1], [1, 1, -2]])

2)使用 linalg.det求得方阵的行列式

A_abs = np.linalg.det(A)

 3) 使用 linalg.inv 求得方阵A的逆矩阵

B = np.linalg.inv(A)

4)利用公式求伴随矩阵:

A_bansui = B * A_abs

 六、python方阵的行列式计算方法

1)创建两个方阵

E = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])F = np.array([[1, 2], [1, 3]])

2)使用 linalg.det 方法求得方阵E和方阵F的行列式

np.linalg.det(E)

np.linalg.det(F)

 七、python解多元一次方程

x+2y+z=72

x−y+3z=73

x+y+2z=18

1) 将未知数的系数写下来,排列成一个矩阵a

a = [[1, 2, 1], [2, -1, 3], [3, 1, 2]]a = np.array(a)

2)常数项构成一个一维数组(向量)

b = [7, 7, 18]b = np.array(b)

3)使用 linalg.solve 方法解方程,参数a指的是系数矩阵,参数b指的是常数项矩阵

x = np.linalg.solve(a, b)

4)使用点乘的方法可以验证一下,系数乘以未知数可以得到常数项

np.dot(a, x)

 到此这篇关于python矩阵基本运算的实现的文章就介绍到这了,更多相关python 矩阵运算内容请搜索wanshiok.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持wanshiok.com!


关于python爬虫模块urllib库详解
python中的转义字符串问题
51自学网自学EXCEL、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。
京ICP备13026421号-1