numpy线性代数中的应用

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))

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

猜你喜欢

转载自blog.csdn.net/weixin_43327597/article/details/106959228
今日推荐