欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

numpy线性代数中得应用

程序员文章站 2022-07-12 14:51:29
...

python - numpy库在线性代数中的运用

numpy库处理线性代数的函数,今天我们就好好的探讨一下

  1. diag diag函数可以得到一个方针的对角线元素,也可以将一个一维数据转化为对角矩阵,也就是非对角线元素都为0

用法

import os
import numpy as np
x=np.random.randn(5,5)
print(np.diag(x))#输出该矩阵的对角线元素
y=[2,4,34,3,2,4]
print(np.diag(y))#返回一个对角线元素是y的矩阵。

这就是
2.dot 该函数用于矩阵之间的乘法运算,也可以用于矩阵与标量之间的运算
下面给出用法

x=np.random.randn(5,5)
y=np.random.randint(1,10.(5,5))
print(x.dot(y))
print(np.dot(x,y)

dot函数可以通过两种方法使用,一是 array1.dot(array2),二是np.dot(array1.array2)这两种方法都可行。

3.trace 计算对角线元素的和,也就是计算矩阵的迹。
用法

print(trace(x)

为矩阵或者多维数组。
4. det 计算矩阵的行列式


print(np.linalg.det(x))

可以求得x矩阵的行列式。

5.eig 计算矩阵的特征值和特征向量

print(np.linalg.dig(x))

6.inv 计算矩阵的逆矩阵

print(np.linalg.inv(x))

7.pinv 计算方ore-Penrose伪逆


print(np.linalg.pinv(x))

注:pinv可以计算非方阵的逆矩阵

  1. qr 算矩阵的QR分解
print(np.linalg.qr(x))
  1. 计算矩阵奇异值分解
print(np.linalg.svd(x))
  1. solve 解线性性方程组
print(np.linalg.solve(A,b))

A为需要求解的线性方程组系数矩阵,b线性方程组等号右边的结果
11. lstsq计算Ax=b最小二乘解

print(np.linalg.lstsq(A,b))

这些基本上包含了最基本也最常用的线性代数的常用运算,可以好好学习一下。

上一篇: 线性代数基础

下一篇: 线性代数