当前位置: 首页 > news >正文

wordpress 跟随插件重庆关键词优化服务

wordpress 跟随插件,重庆关键词优化服务,做烘培网站,html5网站模板 免费线性代数 线性代数(如矩阵乘法、矩阵分解、行列式以及其他方阵数学等)是任何数组库的重要组成部分,NumPy中实现了线性代数中常用的各种操作,并形成了numpy.linalg线性代数相关的模块。本节主要介绍如下函数: diag&am…

线性代数

线性代数(如矩阵乘法、矩阵分解、行列式以及其他方阵数学等)是任何数组库的重要组成部分,NumPy中实现了线性代数中常用的各种操作,并形成了numpy.linalg线性代数相关的模块。本节主要介绍如下函数:

  • diag:以一维数组的形式返回方阵的对角线(或非对角线)元素,或将一维数组转换为方阵(非对角线元素为0)。
  • dot:矩阵乘法。
  • trace:计算对角线元素的和。
  • det:计算矩阵行列式。
  • eig:计算方阵的特征值和特征向量。
  • inv:计算方阵的逆。

向量与矩阵:

矩阵:有多行多列元素组成的一个集合,一个m*n的矩阵,有m行n列个元素

向量:如果一个矩阵只有一列,那么就是一个列向量;如果只有一行,那么就是一个行向量

从某个角度来说,矩阵就是由多个向量组成的

矩阵相乘:

A矩阵:m行

B矩阵:n列

前提:m=n

C矩阵:AB乘积

  • 乘积C的第m行、n列 = 矩阵A的第m行的元素与矩阵B第n列元素的乘积之和
# 矩阵相乘
a = np.arange(12)
b = a.reshape([3, 4])
c = a.reshape([4, 3])
# 矩阵b的第二维大小,必须等于矩阵c的第一维大小
d = b.dot(c) # 等价于 np.dot(b, c)
print('a: \n{}'.format(a))
print('b: \n{}'.format(b))
print('c: \n{}'.format(c))
print('d: \n{}'.format(d))

a:
[ 0 1 2 3 4 5 6 7 8 9 10 11]
b:
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
c:
[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]
[ 9 10 11]]
d:
[[ 42 48 54]
[114 136 158]
[186 224 262]]

# numpy.linalg  中有一组标准的矩阵分解运算以及诸如求逆和行列式之类的东西
# np.linalg.diag 以一维数组的形式返回方阵的对角线(或非对角线)元素,
# 或将一维数组转换为方阵(非对角线元素为0)
e = np.diag(d)
f = np.diag(e)
print('d: \n{}'.format(d))
print('e: \n{}'.format(e))
print('f: \n{}'.format(f))

d:
[[ 42 48 54]
[114 136 158]
[186 224 262]]
e:
[ 42 136 262]
f:
[[ 42 0 0]
[ 0 136 0]
[ 0 0 262]]

# trace, 计算对角线元素的和
g = np.trace(d)
g

440

# det,计算行列式
h = np.linalg.det(d)
h

1.3642420526593978e-11

# eig,计算特征值和特征向量
i = np.linalg.eig(d)
i

(array([4.36702561e+02, 3.29743887e+00, 3.13152204e-14]), array([[ 0.17716392, 0.77712552, 0.40824829], [ 0.5095763 , 0.07620532, -0.81649658], [ 0.84198868, -0.62471488, 0.40824829]]))

# inv,计算方阵的逆
tmp = np.random.rand(3, 3)
j = np.linalg.inv(tmp)
j

array([[-0.59449952, 1.39735912, -0.06654123], [ 1.56034184, -0.40734618, -0.48055062], [ 0.10659811, -0.62164179, 1.30437759]])

补充:矩阵的逆

矩阵的逆是指对于一个n维的矩阵A,存在一个n维的矩阵B,使得A乘以B等于单位矩阵E,即AB=BA=E。其逆矩阵求解方法,有以下几种:

伴随矩阵法: 伴随矩阵法是求解矩阵逆的一种方法。对于一个n维矩阵A,其逆矩阵可以用下式表示:A^(-1)=1/|A| * Adj(A),其中|A|表示A的行列式,Adj(A)表示A的伴随矩阵。伴随矩阵的求法是:先求出矩阵A的代数余子式,然后将其转置得到的矩阵即为伴随矩阵。

初等变换法: 初等变换法是求解矩阵逆的另一种方法。将待求逆的矩阵A和单位矩阵E按行合并成一个矩阵[A|E],然后对其进行初等变换,直到左边的矩阵变为单位矩阵,右边的矩阵即为所求的逆矩阵。

高斯-约旦消元法: 高斯-约旦消元法也是求解矩阵逆的一种方法。将待求逆的矩阵A和单位矩阵E按列合并成一个矩阵[A|E],然后对其进行高斯-约旦消元,直到左边的矩阵变为单位矩阵,右边的矩阵即为所求的逆矩阵。

分块矩阵法: 分块矩阵法适用于分块矩阵的求逆,即将一个大的矩阵分成多个小的矩阵。其方法是将大矩阵A分成四个小矩阵A11、A12、A21、A22,并根据矩阵分块公式求出逆矩阵。

代码合集

import numpy as npdef func1():a = np.arange(12)b = a.reshape([3, 4])c = a.reshape([4, 3])# 矩阵b的第二维大小,必须等于矩阵c的第一维大小d = b.dot(c)  # 等价于 np.dot(b, c)# np.dot(b, c)print('a: \n{}'.format(a))print('b: \n{}'.format(b))print('c: \n{}'.format(c))print('d: \n{}'.format(d))# numpy.linalg  中有一组标准的矩阵分解运算以及诸如求逆和行列式之类的东西# np.linalg.diag 以一维数组的形式返回方阵的对角线(或非对角线)元素,# 或将一维数组转换为方阵(非对角线元素为0)print("=========linalg test=========")e = np.diag(d)f = np.diag(e)print('d: \n{}'.format(d))print('e: \n{}'.format(e))print('f: \n{}'.format(f))# 计算对角线元素之和g = np.trace(d)print(g)# det,计算行列式h = np.linalg.det(d)print(h)# eig,计算特征值和特征向量i = np.linalg.eig(d)print(i)def func2():# 计算方阵的逆# https://blog.51cto.com/u_15072903/3963066tmp = np.random.rand(3, 3)print(tmp)j = np.linalg.inv(tmp)print(j)print(tmp.dot(j))print(j.dot(tmp))if __name__ == "__main__":# func1()func2()
http://www.hotlads.com/news/527.html

相关文章:

  • 做网站收藏的网页线上引流的八种推广方式
  • 网站打模块网络营销具有什么特点
  • 请人建网站需要多少钱北京seo关键词优化外包
  • 学生做网站期末作业企业新闻营销
  • 公司建设网站属于什么科目seo zac
  • wordpress 主题enigmaseo排名优化推广报价
  • 有哪些网站可以做印度市场调研百度做网站需要多少钱
  • 做网站赚钱交税站长工具日本
  • 六安电商网站建设哪家好广州新闻最新消息今天
  • 网站建设与管理专业教学计划什么叫seo
  • asp 精品网站制作石家庄网站建设方案推广
  • 焊接加工订单平台网站搜索排名优化价格
  • 保定网站seo百度知道客服
  • 白之家低成本做网站推广产品的文案
  • 搭建网站需要什么技术西藏自治区seo 标题 关键词优化
  • 常州市网站制作推荐友情链接
  • 开网站做外贸账号seo是什么
  • 山西公司响应式网站建设平台seo中介平台
  • 做装修网站如何北京企业网站seo平台
  • webgl网站建设seo网站诊断
  • 稳定的常州网站推广seo优化技术教程
  • 广州小型网站建设公司安徽百度关键词优化
  • 综合网站开发搜易网服务内容
  • 怎么做简单的企业网站站长字体
  • 企业建站系统价格软件培训机构排名
  • 微信网站如何做百度统计怎么使用
  • 网站建站金融模板泉州seo
  • 公司网站 cms短视频培训课程
  • 网站备案账号是什么样的网络营销是指
  • 做室内设计的网站有哪些内容图片外链在线生成