【数据挖掘重要笔记day28】数据挖掘numpy中需要学习的线性代数知识

Abbie ·
更新时间:2024-11-10
· 836 次阅读

文章目录数据挖掘numpy中需要学习的线性代数知识x.dotnp.dot@符numpy.linalg常用的numpy.linalg函数 数据挖掘numpy中需要学习的线性代数知识

线性代数(如矩阵乘法、矩阵分解、⾏列式以及其他⽅阵数学 等)是任何数组库的重要组成部分。不像某些语⾔(如 MATLAB),通过*对两个⼆维数组相乘得到的是⼀个元素级的 积,⽽不是⼀个矩阵点积。因此, NumPy提供了⼀个⽤于矩阵 乘法的dot函数(既是⼀个数组⽅法也是numpy命名空间中的⼀ 个函数):

import numpy as np x = np.array([[1., 2., 3.], [4., 5., 6.]]) x

在这里插入图片描述

y = np.array([[6., 23.], [-1, 7], [8, 9]]) y

在这里插入图片描述

x.dot x.dot(y)

在这里插入图片描述

np.dot

x.dot(y)等价于np.dot(x, y)

np.dot(x, y)

在这里插入图片描述

⼀个⼆维数组跟⼀个⼤⼩合适的⼀维数组的矩阵点积运算之后将 会得到⼀个⼀维数组:

np.dot(x, np.ones(3))

在这里插入图片描述

@符

@符(类似Python 3.5)也可以⽤作中缀运算符,进⾏矩阵乘 法
在这里插入图片描述

numpy.linalg

numpy.linalg中有⼀组标准的矩阵分解运算以及诸如求逆和⾏列 式之类的东⻄。它们跟MATLAB和R等语⾔所使⽤的是相同的⾏ 业标准线性代数库,如BLAS、 LAPACK、 Intel MKL(Math Kernel Library,可能有,取决于你的NumPy版本)等

from numpy.linalg import inv, qr X = np.random.randn(5, 5) X

在这里插入图片描述

mat = X.T.dot(X)#点击 mat

在这里插入图片描述

inv(mat)#计算方针的逆

在这里插入图片描述

mat.dot(inv(mat)) q, r = qr(mat)#计算qr分解 r

在这里插入图片描述

q

在这里插入图片描述

常用的numpy.linalg函数

在这里插入图片描述


作者:汪雯琦



线性代数 NumPy 数据 学习 代数 数据挖掘 线性

需要 登录 后方可回复, 如果你还没有账号请 注册新账号