本文主要是介绍python-np.linalg-线性代数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 一、线性代数计算的函数
- 1. 矩阵和向量的乘法:`np.dot()`
- 2. 矩阵的逆:`np.linalg.inv(A)`
- 3. 矩阵的转置:`np.transpose(A)`
- 4. 矩阵的行列式:`np.linalg.det(A)`
- 5. 矩阵的特征值和特征向量:`np.linalg.eig()`
- 6. 解线性方程组:`np.linalg.solve()`
- 7,范数`np.linalg.norm(x, ord=None, axis=None, keepdims=False)`
一、线性代数计算的函数
np.linalg
是NumPy库中用于线性代数运算的子模块。
1. 矩阵和向量的乘法:np.dot()
2. 矩阵的逆:np.linalg.inv(A)
矩阵必须是方阵且可逆,否则会抛出LinAlgError异常。
3. 矩阵的转置:np.transpose(A)
4. 矩阵的行列式:np.linalg.det(A)
5. 矩阵的特征值和特征向量:np.linalg.eig()
linalg模块中,eigvals()函数可以计算矩阵的特征值,而eig()函数可以返回一个包含特征值和对应的特征向量的元组
6. 解线性方程组:np.linalg.solve()
7,范数np.linalg.norm(x, ord=None, axis=None, keepdims=False)
参数解释:
- x:要计算范数的向量或矩阵
- ord:范数的类型,默认为None,表示计算向量的二范数。可以设置为1、2、np.inf等不同的值,分别对应不同的范数计算方式
- axis:指定沿着哪个轴计算范数,对于矩阵而言,可以选择0计算列向量的范数,1计算行向量的范数
- keepdims:是否保持计算结果的维度,如果设置为True,则结果会保持与输入的维度相同,如果设置为False,则结果为标量
import numpy as np# 创建一个向量
v = np.array([1, 2, 3])# 计算向量v的二范数
norm_v = np.linalg.norm(v)print(norm_v)输出结果:
3.7416573867739413# 创建一个矩阵
A = np.array([[1, 2], [3, 4]])# 计算矩阵A的Frobenius范数,并保持维度
norm_A = np.linalg.norm(A, ord='fro', keepdims=True)print(norm_A)输出结果:
array([5.47722558])
这篇关于python-np.linalg-线性代数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!