问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

线性代数:矩阵知识点总结(jupyter)

创作时间:
作者:
@小白创作中心

线性代数:矩阵知识点总结(jupyter)

引用
CSDN
1.
https://blog.csdn.net/weixin_74052970/article/details/128164499

线性代数是数学的一个重要分支,广泛应用于科学和工程领域。矩阵作为线性代数的核心概念,是解决线性方程组、进行数据处理和分析的重要工具。本文将对矩阵的基本概念、计算方法、向量乘积、行列式、线性方程和向量空间等知识点进行系统总结,帮助读者更好地理解和掌握线性代数中的矩阵理论。

一、矩阵的定义以及与数组的区别

定义

矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合。矩阵是数组的特殊形式,通常用大写字母表示,如A、B、C等。矩阵中的元素用小写字母加下标表示,如aij表示矩阵A中第i行第j列的元素。

与数组的区别

  1. 矩阵中的元素只能是数字,而数组中的元素可以是字符或者字符串
  2. 矩阵是二维的,数组可以是一维的、多维的
  3. 矩阵显示时,元素之间无逗号;数组显示时,元素之间用逗号隔开

二、矩阵的计算

1. 矩阵的基本计算(加减乘法)

矩阵的加法和减法

两个矩阵的行数和列数必须相同。设A和B是两个同型矩阵,即A和B都有m行n列,那么A和B的和(差)也是一个m行n列的矩阵,记作A+B(A-B),其元素为对应元素的和(差)。

矩阵的乘法

矩阵的乘法要求前者的列数必须和后者的行数相同。设A是一个m×n矩阵,B是一个n×p矩阵,那么A和B的乘积是一个m×p矩阵,记作AB,其元素为:

$$(AB){ij} = \sum{k=1}^{n} a_{ik}b_{kj}$$

矩阵的除法

矩阵没有除法的概念,但可以使用逆矩阵来实现类似除法的操作。如果矩阵A可逆,那么A的逆矩阵记作A-1,满足AA-1 = A-1A = I,其中I是单位矩阵。

2. 更多计算方法

矩阵的转置

矩阵的转置是将矩阵的行和列互换。设A是一个m×n矩阵,那么A的转置是一个n×m矩阵,记作AT,其元素为:

$$(A^T){ij} = a{ji}$$

零矩阵

零矩阵是所有元素都为0的矩阵。零矩阵具有以下性质:

  • A+0=A
  • 0A=0
  • A0=0

单位矩阵

单位矩阵是对角线上的所有元素都为1,而所有其他元素都为零的方阵,用I表示。单位矩阵具有以下性质:

  • AI=IA=A

逆矩阵

如果矩阵A可逆,那么存在一个矩阵B,使得AB=BA=I,其中I是单位矩阵。矩阵B称为A的逆矩阵,记作A-1

计算法则

矩阵的计算遵循以下法则:

  • 结合律:(AB)C = A(BC)
  • 分配律:A(B+C) = AB+AC
  • 数乘结合律:k(AB) = (kA)B = A(kB)

三、向量乘积

标量积

标量积也叫点乘、内积,是两个向量之间的运算。设a和b是两个n维向量,那么a和b的标量积定义为:

$$a \cdot b = \sum_{i=1}^{n} a_i b_i$$

向量积

向量积也叫叉乘、外积,是两个向量之间的运算。设a和b是两个三维向量,那么a和b的向量积定义为:

$$a \times b = (a_2b_3 - a_3b_2, a_3b_1 - a_1b_3, a_1b_2 - a_2b_1)$$

向量积的结果是一个向量,其方向垂直于a和b所在的平面,大小等于a和b构成的平行四边形的面积。

四、行列式和代数余子式及矩阵的逆

行列式

行列式是方阵的一个标量值,记作det(A)或|A|。行列式的计算方法有多种,最常用的是行分解和列分解。行列式具有以下性质:

  • 交换两行(列)的值,行列式的值变号
  • 某一行(列)的倍加到另一行(列),行列式的值不变
  • 某一行(列)的元素都乘以一个常数k,行列式的值也乘以k

代数余子式

代数余子式是行列式计算中的一个重要概念。设A是一个n阶方阵,aij是A中第i行第j列的元素,那么aij的代数余子式记作Aij,定义为:

$$A_{ij} = (-1)^{i+j}M_{ij}$$

其中Mij是A中去掉第i行第j列后剩余元素构成的(n-1)阶方阵的行列式。

矩阵的逆

矩阵的逆是矩阵除法的重要概念。如果矩阵A可逆,那么存在一个矩阵B,使得AB=BA=I,其中I是单位矩阵。矩阵B称为A的逆矩阵,记作A-1。矩阵的逆可以通过以下方法计算:

  • 伴随矩阵法
  • 初等变换法
  • 克拉默法则

五、线性方程和向量空间

行最简矩阵

行最简矩阵是通过初等行变换将矩阵化简得到的最简形式。行最简矩阵具有以下性质:

  • 非零行的第一个非零元素为1
  • 每个非零行的第一个非零元素所在列的其他元素都为0
  • 非零行在上,零行在下

行最简矩阵可以用于求解线性方程组的解。求行最简矩阵的方法有以下三种:

  1. 利用初等行变换化行最简就矩阵
  2. 利用矩阵乘法
  3. 利用公式

六、代码总结

以下是Python中一些常用的矩阵运算代码示例:

矩阵的乘法

import numpy as np

V = np.array([[1, 2], [3, 4]])
M = np.array([[5, 6], [7, 8]])
W = np.dot(V, M)
print(W)

矩阵的转置操作

import numpy as np

M = np.array([[1, 2], [3, 4]])
M_transpose = M.transpose()
print(M_transpose)

求行列式

import numpy as np

M_4 = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]])
det_M_4 = np.linalg.det(M_4)
print(det_M_4)

初等行变换

def row_times_number(matrix, row, number):
    matrix[row] = matrix[row] * number

def add_row_to_row(matrix, add_row, to_row, by):
    matrix[to_row] = matrix[to_row] + by * matrix[add_row]

def switch_row(matrix, row_a, row_b):
    matrix[[row_a, row_b]] = matrix[[row_b, row_a]]

求行最简矩阵

from sympy import Matrix
import numpy as np

A = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
rref = Matrix(A).rref()[0].tolist()
print(rref)
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号