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 open读写文件实现脚本
Sep 06 Python
Python深入学习之内存管理
Aug 31 Python
浅谈python中的正则表达式(re模块)
Oct 17 Python
python中int与str互转方法
Jul 02 Python
python 用下标截取字符串的实例
Dec 25 Python
Python后台开发Django的教程详解(启动)
Apr 08 Python
Django框架用户注销功能实现方法分析
May 28 Python
详解如何减少python内存的消耗
Aug 09 Python
python web框架Flask实现图形验证码及验证码的动态刷新实例
Oct 14 Python
Python实现新型冠状病毒传播模型及预测代码实例
Feb 05 Python
Python爬虫获取豆瓣电影并写入excel
Jul 31 Python
Python SMTP发送电子邮件的示例
Sep 23 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
PHP字符串中特殊符号的过滤方法介绍
2014/02/18 PHP
javascript 文本框水印/占位符(watermark/placeholder)实现方法
2012/01/15 Javascript
javascript中this做事件参数相关问题解答
2013/03/17 Javascript
html+css+js实现xp window界面及有关功能
2013/03/26 Javascript
JS弹出可拖拽可关闭的div层完整实例
2015/02/13 Javascript
解决node-webkit 不支持html5播放mp4视频的方法
2015/03/11 Javascript
jQuery EasyUI API 中文帮助文档和扩展实例
2016/08/01 Javascript
浅析javascript中的Event事件
2016/12/09 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
2016/12/22 Javascript
JS动态添加的div点击跳转到另一页面实现代码
2017/09/30 Javascript
JS中==、===你分清楚了吗
2020/03/04 Javascript
使用webpack和rollup打包组件库的方法
2021/02/25 Javascript
[35:26]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第三局
2016/02/26 DOTA
python中去空格函数的用法
2014/08/21 Python
Python使用Flask框架同时上传多个文件的方法
2015/03/21 Python
用Python生成器实现微线程编程的教程
2015/04/13 Python
Python使用poplib模块和smtplib模块收发电子邮件的教程
2016/07/02 Python
Python实现针对中文排序的方法
2017/05/09 Python
Windows下anaconda安装第三方包的方法小结(tensorflow、gensim为例)
2018/04/05 Python
手把手教你pycharm专业版安装破解教程(linux版)
2019/09/26 Python
使用Django搭建一个基金模拟交易系统教程
2019/11/18 Python
python颜色随机生成器的实例代码
2020/01/10 Python
Python爬虫之Selenium警告框(弹窗)处理
2020/12/04 Python
PHP面试题大全
2015/10/16 面试题
第二层交换机和路由器的区别?第三层交换机和路由器的区别?
2013/05/23 面试题
幼师自我鉴定范文
2013/10/01 职场文书
优秀中专生推荐信
2013/11/17 职场文书
乡镇纠风工作实施方案
2014/03/22 职场文书
合作意向书格式及范文
2014/03/31 职场文书
2015年城管个人工作总结
2015/05/15 职场文书
金陵十三钗观后感
2015/06/04 职场文书
换届选举主持词
2015/07/03 职场文书
人生哲理妙语30条:淡写流年,笑过人生
2019/09/04 职场文书
python 远程执行命令的详细代码
2022/02/15 Python
python单向链表实例详解
2022/05/25 Python
Python sklearn分类决策树方法详解
2022/09/23 Python