我就废话不多说了,大家还是直接看代码吧~

import numpy as np

kernel = np.array([1, 1, 1, 2]).reshape((2, 2))

print(kernel)

print(np.linalg.inv(kernel))

注意,Singular matrix奇异矩阵不可求逆

补充:python+numpy中矩阵的逆和伪逆的区别

定义:

对于矩阵A,如果存在一个矩阵B,使得AB=BA=E,其中E为与A,B同维数的单位阵,就称A为可逆矩阵(或者称A可逆),并称B是A的逆矩阵,简称逆阵。(此时的逆称为凯利逆)

矩阵A可逆的充分必要条件是|A|≠0。

伪逆矩阵是逆矩阵的广义形式。由于奇异矩阵或非方阵的矩阵不存在逆矩阵,但可以用函数pinv(A)求其伪逆矩阵。

基本语法为X=pinv(A),X=pinv(A,tol),其中tol为误差,pinv为pseudo-inverse的缩写:max(size(A))*norm(A)*eps。

函数返回一个与A的转置矩阵A' 同型的矩阵X,并且满足:AXA=A,XAX=X.此时,称矩阵X为矩阵A的伪逆,也称为广义逆矩阵。

pinv(A)具有inv(A)的部分特性,但不与inv(A)完全等同。

如果A为非奇异方阵,pinv(A)=inv(A),但却会耗费大量的计算时间,相比较而言,inv(A)花费更少的时间。

代码如下:

1.矩阵求逆

import numpy as np

a = np.array([[1, 2], [3, 4]]) # 初始化一个非奇异矩阵(数组)

print(np.linalg.inv(a)) # 对应于MATLAB中 inv() 函数

# 矩阵对象可以通过 .I 求逆,但必须先使用matirx转化

A = np.matrix(a)

print(A.I)

2.矩阵求伪逆

import numpy as np

# 定义一个奇异阵 A

A = np.zeros((4, 4))

A[0, -1] = 1

A[-1, 0] = -1

A = np.matrix(A)

print(A)

# print(A.I) 将报错,矩阵 A 为奇异矩阵,不可逆

print(np.linalg.pinv(A)) # 求矩阵 A 的伪逆(广义逆矩阵),对应于MATLAB中 pinv() 函数

这就是矩阵的逆和伪逆的区别

截至2020/10/4,matrix函数还可以使用,但已经过时,应该是mat函数这种。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

时间: 2021-03-09

python求逆矩阵的方法,Python 如何求矩阵的逆相关推荐

  1. 机器学习常见求逆矩阵的方法

    机器学习的常见求解逆矩阵的方法 高斯消元法 LU分解法 SVD分解法 QR分解法 高斯消元法 高斯消元法是最经典也是最广为人知的一种矩阵求逆方法,但是在现实应用中很少用到高斯消元法来进行矩阵的逆矩阵的 ...

  2. 求逆矩阵计算机方法,求逆矩阵的快速方法(用于编程).pdf

    求逆矩阵的快速方法(用于编程) ? ? 1 2 2 2 Ρ Ρ Ρ Ρ Ρ ? Α Α Α Α Α Α 3 Α Β Β Β 3 Α Β Α Β Α Β Α Β Β Β Β 第 20 卷第 1 期 大 ...

  3. python查看指令的方法python -h

    python查看指令的方法python -h 进入cmd 输入 python -h C:\Users\Administrator>python -h usage: python [option] ...

  4. python selenium定位元素方法,python + selenium 练习篇 - 定位元素的方法

    1.利用ID定位元素(能直接通过ID来定位的元素比较少) # coding=utf-8 from selenium import webdriver driver = webdriver.Chrome ...

  5. Python Gitlab Api 使用方法 - python

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 简述 公司使用gitlab 来托管代码,日常代码merge request 以及其他管理是交给测试,鉴于操作需经常打开网 ...

  6. python读取word的方法,Python读取Word(.docx)正文信息的方法

    Python读取Word(.docx)正文信息的方法 本文介绍用Python简单读取*.docx文件信息,一些python-word库就是对这种方法的扩展. 介绍分两部分: Word(*.docx)文 ...

  7. python第三方库安装方法-Python第三方库安装

    Python有一个全球社区:https://pypi.org/,在这里我们可以搜索任何主题的Python第三方库.PyPI全称是Python Package Index,指的是Python包的索引,它 ...

  8. matlab 中序列求极值的方法,Matlab中求序列的极值

    我们知道,在Matlab中有专门求序列最大值和最小值的函数,分别是Max 和 Min,但是有时候我们不满足于求整个序列的最值,而是对序列的极值,也就是局部的最值感兴趣.对于解析函 数,这个比较简单,只 ...

  9. python 重命名的方法,python如何重命名文件

    欢迎访问少儿编程网(http://www.pxcodes.com)python重命名文件的方法:首先打开pycharm,找到要重命名的文件:然后依次选择[Refactor-Rename],在重命名窗口 ...

  10. python decode ignore_Python decode()方法 - Python 教程 - 自强学堂

    Python decode()方法 描述 Python decode() 方法以 encoding 指定的编码格式解码字符串.默认编码为字符串编码. 语法 decode()方法语法:string.de ...

最新文章

  1. MyEclipse部署Web项目Servers报错:NullPointerException at com.genuitec.eclipse.ast.deploy.core.Deployment
  2. fopen文件路径怎么写_PHP文件上传
  3. vue项目中的“Invalid Host header”
  4. 天线发射功率计算公式_天线基本知识及应用―链路及空间无线传播损耗计算
  5. 计算机视觉未有深度学习之前
  6. srs部署到ubuntu 18.04 server
  7. 疫情核酸检测,应考虑使用刷身份证的方式
  8. jar 文件不能运行
  9. 慢速DoS攻击工具slowhttptest(网站压力测试工具)
  10. 从 6 万用户评论中,选出 23 门全世界最好的 CS 免费课!
  11. audio接线图解_拒绝做小白 你应该知道的常见音频接口
  12. 北大美女辞去公司副总职务创业养狗
  13. 【NLP】自然语言处理的语料库与词库
  14. DM13: COSCon19私人回顾
  15. 用python放音乐_python怎么播放音乐
  16. 二手书市场的快速增长:多抓鱼产品分析报告
  17. ARM汇编寄存器和常用指令详解
  18. 四旋翼自主飞行器探测跟踪系统项目的随笔
  19. java:常见的日期转型,“Tue Oct 18 00:00:00 CST 2022“
  20. 2021年广东省专业技能大赛——大数据技术与应用 真题题目及解析(2)

热门文章

  1. 如何使用Visual Studio查看源代码
  2. pip换源工具pqi
  3. 【C++零散】计时chrono
  4. artdialog ajax新增,artDialog 对话框组件使用简介
  5. bp神经网络及ROC曲线绘制
  6. 大一新生调查报告——新生遇到的问题与需求
  7. 什么是跨域?跨域解决方法
  8. java学习第一步-工欲善其事必先利其器
  9. 网页游戏运营模式研究
  10. [Fourier]傅里叶级数中虚数部分j去了哪里