python-np.linalg-线性代数

文章目录

  • 一、线性代数计算的函数
        • [1. 矩阵和向量的乘法:`np.dot()`](#1. 矩阵和向量的乘法:np.dot())
        • [2. 矩阵的逆:`np.linalg.inv(A)`](#2. 矩阵的逆:np.linalg.inv(A))
        • [3. 矩阵的转置:`np.transpose(A)`](#3. 矩阵的转置:np.transpose(A))
        • [4. 矩阵的行列式:`np.linalg.det(A)`](#4. 矩阵的行列式:np.linalg.det(A))
        • [5. 矩阵的特征值和特征向量:`np.linalg.eig()`](#5. 矩阵的特征值和特征向量:np.linalg.eig())
        • [6. 解线性方程组:`np.linalg.solve()`](#6. 解线性方程组:np.linalg.solve())
        • [7,范数`np.linalg.norm(x, ord=None, axis=None, keepdims=False)`](#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,则结果为标量
python 复制代码
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])
相关推荐
Flittly2 小时前
【从零手写 ClaudeCode:learn-claude-code 项目实战笔记】(3)TodoWrite (待办写入)
python·agent
千寻girling6 小时前
一份不可多得的 《 Django 》 零基础入门教程
后端·python·面试
databook10 小时前
探索视觉的边界:用 Manim 重现有趣的知觉错觉
python·动效
明月_清风11 小时前
Python 性能微观世界:列表推导式 vs for 循环
后端·python
明月_清风11 小时前
Python 性能翻身仗:从 O(n) 到 O(1) 的工程实践
后端·python
helloweilei1 天前
python 抽象基类
python
用户8356290780511 天前
Python 实现 PPT 转 HTML
后端·python
哥布林学者1 天前
高光谱成像(四)最小噪声分数变换 MNF
机器学习·高光谱成像
zone77391 天前
004:RAG 入门-LangChain读取PDF
后端·python·面试
zone77391 天前
005:RAG 入门-LangChain读取表格数据
后端·python·agent