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中sets模块的用法实例
Sep 30 Python
Python去除字符串两端空格的方法
May 21 Python
python读取文本绘制动态速度曲线
Jun 21 Python
python实现简单登陆系统
Oct 18 Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
Apr 26 Python
Python画图实现同一结点多个柱状图的示例
Jul 07 Python
Python数据处理篇之Sympy系列(五)---解方程
Oct 12 Python
Python倒排索引之查找包含某主题或单词的文件
Nov 13 Python
Python 利用邮件系统完成远程控制电脑的实现(关机、重启等)
Nov 19 Python
构建高效的python requests长连接池详解
May 02 Python
Python基于pandas绘制散点图矩阵代码实例
Jun 04 Python
解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题
Sep 17 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的中使用非缓冲模式查询数据库的方法
2017/02/05 PHP
使用jscript实现二进制读写脚本代码
2008/06/09 Javascript
Javascript 调试利器 Firebug使用详解六
2009/07/05 Javascript
Javacript实现颜色梯度变化和渐变的效果代码
2013/05/31 Javascript
javascript根据时间生成m位随机数最大13位
2014/10/30 Javascript
NodeJS学习笔记之FS文件模块
2015/01/13 NodeJs
jQuery Select下拉框操作小结(推荐)
2016/07/22 Javascript
AngularJS入门教程之ng-class 指令用法
2016/08/01 Javascript
AngularJS中的拦截器实例详解
2017/04/07 Javascript
详解vue-cli 接口代理配置
2017/12/13 Javascript
Vue-cli Eslint在vscode里代码自动格式化的方法
2018/02/23 Javascript
手把手教你用Node.js爬虫爬取网站数据的方法
2018/07/05 Javascript
微信小程序自定义toast组件的方法详解【含动画】
2019/05/11 Javascript
Layui弹出层 加载 做编辑页面的方法
2019/09/16 Javascript
vue实现将数据存入vuex中以及从vuex中取出数据
2019/11/08 Javascript
详解vue中$nextTick和$forceUpdate的用法
2019/12/11 Javascript
在VUE style中使用data中的变量的方法
2020/06/19 Javascript
在Vue中使用Viser说明(基于AntV-G2可视化引擎)
2020/10/28 Javascript
[03:11]2014DOTA2国际邀请赛-VG掉入败者组 独家专访357
2014/07/19 DOTA
[43:03]完美世界DOTA2联赛PWL S2 PXG vs Magma 第二场 11.21
2020/11/24 DOTA
Python批量重命名同一文件夹下文件的方法
2015/05/25 Python
浅谈对yield的初步理解
2017/05/29 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
python的re正则表达式实例代码
2018/01/24 Python
详解python中__name__的意义以及作用
2019/08/07 Python
终于搞懂了Keras中multiloss的对应关系介绍
2020/06/22 Python
Python实现粒子群算法的示例
2021/02/14 Python
世界著名的顶级牛排:Omaha Steak(奥马哈牛排)
2016/09/20 全球购物
公司JAVA开发面试题
2015/04/02 面试题
中专毕业生自我鉴定
2013/11/21 职场文书
品质主管的岗位职责
2013/12/04 职场文书
元旦寄语大全
2014/04/10 职场文书
我的中国梦演讲稿初中篇
2014/08/19 职场文书
2019安全宣传标语大全
2019/08/14 职场文书
Vue实现tab导航栏并支持左右滑动功能
2021/06/28 Vue.js
JavaScript流程控制(分支)
2021/12/06 Javascript