Python解决线性代数问题之矩阵的初等变换方法


Posted in Python onDecember 12, 2018

定义一个矩阵初等行变换的类

class rowTransformation():
 
 
 array = ([[],[]])
 def __init__(self,array):
  self.array = array
 def __mul__(self, other):
  pass
 # 交换矩阵的两行
 def exchange_two_lines(self,x,y):
   a = self.array[x-1:x].copy()
   self.array[x-1:x] = self.array[y-1:y]
   self.array[y-1:y] = a
   return self.array
 # 以k不等于0乘以矩阵中的某x行
 def multiply(k,x,self):
  self.array[x-1:x] = k*self.array[x-1:x]
  return self.array
 
 # 把x行所有元的k倍加到另y行上去
 def k_mul_arr_add_arr(self,k,x,y):
  self.array[y-1:y] += k*self.array[x-1:x]
  return self.array

定义一个初等列变换的类

# 封装一个初等列变换类
class colTransformation():
 
 array = ([[],[]])
 
 def __init__(self, array):
  self.array = array
 
 def __mul__(self, other):
  pass
 
 # 交换矩阵的两列
 def exchange_two_lines(self, x, y):
   a = self.array[:, x-1:x].copy()
   self.array[:, x-1:x] = self.array[:, y-1:y]
   self.array[:, y-1:y] = a
   return self.array
 
 # 以k不等于0乘以矩阵中的某x列
 def multiply(self, k, x):
  self.array[:, x-1:x] = k*self.array[:, x-1:x]
  return self.array
 
 # 把x列所有元的k倍加到另y列上去
 def k_mul_arr_add_arr(self, k, x, y):
  self.array[:, y-1:y] += k*self.array[:, x-1:x]
  return self.array

求矩阵的秩

b = np.array([[2,-1,-1,1,2],[1,1,-2,1,4],[4,-6,2,-2,4],[3,6,-9,7,9]])
a = np.linalg.matrix_rank(b)
print(a)
3

求非齐次线性方程组的解

以上这篇Python解决线性代数问题之矩阵的初等变换方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python ORM框架SQLAlchemy学习笔记之数据查询实例
Jun 10 Python
Python二维码生成库qrcode安装和使用示例
Dec 16 Python
详解重置Django migration的常见方式
Feb 15 Python
Python二叉搜索树与双向链表转换算法示例
Mar 02 Python
与Django结合利用模型对上传图片预测的实例详解
Aug 07 Python
python禁用键鼠与提权代码实例
Aug 16 Python
python之列表推导式的用法
Nov 29 Python
python 实现 hive中类似 lateral view explode的功能示例
May 18 Python
keras自动编码器实现系列之卷积自动编码器操作
Jul 03 Python
解决Windows下python和pip命令无法使用的问题
Aug 31 Python
小结Python的反射机制
Sep 28 Python
Python OpenCV实现传统图片格式与base64转换
Jun 13 Python
对python数据切割归并算法的实例讲解
Dec 12 #Python
python实现文本界面网络聊天室
Dec 12 #Python
Python3爬虫学习之应对网站反爬虫机制的方法分析
Dec 12 #Python
python实现简单多人聊天室
Dec 11 #Python
在python中利用KNN实现对iris进行分类的方法
Dec 11 #Python
python 划分数据集为训练集和测试集的方法
Dec 11 #Python
Python sklearn KFold 生成交叉验证数据集的方法
Dec 11 #Python
You might like
WHOIS类的修改版
2006/10/09 PHP
PHP如何利用P3P实现跨域
2013/08/24 PHP
php验证身份证号码正确性的函数
2016/07/20 PHP
javascript 数组的方法集合
2008/06/05 Javascript
DIY jquery plugin - tabs标签切换实现代码
2010/12/11 Javascript
Javascript连接多个数组不用concat来解决
2014/03/24 Javascript
JS实现闪动的title消息提醒效果
2014/06/20 Javascript
jquery的attr方法禁用表单元素禁用输入内容
2014/06/23 Javascript
JS对字符串编码的几种方式使用指南
2015/05/14 Javascript
KnockoutJS 3.X API 第四章之数据控制流with绑定
2016/10/10 Javascript
用Angular实时获取本地Localstorage数据,实现一个模拟后台数据登入的效果
2016/11/09 Javascript
jquery实现图片列表鼠标移入微动
2016/12/01 Javascript
基于jQuery实现表格的排序
2016/12/02 Javascript
Vue2路由动画效果的实现代码
2017/07/10 Javascript
JavaScript设计模式之工厂模式简单实例教程
2018/07/03 Javascript
如何在js代码中消灭for循环实例详解
2018/07/29 Javascript
Vue在页面数据渲染完成之后的调用方法
2018/09/11 Javascript
浅谈Angular7 项目开发总结
2018/12/19 Javascript
微信小程序如何实现五星评价功能
2019/10/15 Javascript
VUE DEMO之模拟登录个人中心页面之间数据传值实例
2019/10/31 Javascript
Vue双向绑定实现原理与方法详解
2020/05/07 Javascript
详解Vue中的MVVM原理和实现方法
2020/07/15 Javascript
通过实例解析javascript Date对象属性及方法
2020/11/04 Javascript
[00:17]游戏风云独家报道:DD赛后说出数字秘密 吓死你们啊!
2014/07/13 DOTA
详解Python中的变量及其命名和打印
2016/03/11 Python
浅谈python编译pyc工程--导包问题解决
2019/03/20 Python
python socket 聊天室实例代码详解
2019/11/14 Python
Python用access判断文件是否被占用的实例方法
2020/12/17 Python
html5中为audio标签增加停止按钮动作实现方法
2013/01/04 HTML / CSS
linux比较文件内容的命令是什么
2015/09/23 面试题
临床医学专业学生的自我评价分享
2013/11/21 职场文书
仓库文员岗位职责
2014/04/06 职场文书
2015年安全工作总结范文
2015/04/02 职场文书
长征观后感
2015/06/09 职场文书
预备党员表决心的话
2015/09/22 职场文书
HTML5+CSS+JavaScript实现捉虫小游戏设计和实现
2021/10/16 HTML / CSS