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

数据挖掘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函数

在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值