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中截取字符函数strip,lstrip,rstrip
Jul 17 Python
在Linux系统上部署Apache+Python+Django+MySQL环境
Dec 24 Python
Django数据库表反向生成实例解析
Feb 06 Python
解决python读取几千万行的大表内存问题
Jun 26 Python
numpy添加新的维度:newaxis的方法
Aug 02 Python
python 定时器,轮询定时器的实例
Feb 20 Python
pandas DataFrame 警告(SettingWithCopyWarning)的解决
Jul 23 Python
python 安装教程之Pycharm安装及配置字体主题,换行,自动更新
Mar 13 Python
Eclipse配置python默认头过程图解
Apr 26 Python
在Keras中利用np.random.shuffle()打乱数据集实例
Jun 15 Python
利用Python实现自动扫雷小脚本
Dec 17 Python
python 录制系统声音的示例
Dec 21 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
完美解决:Apache启动问题―(OS 10022)提供了一个无效的参数
2013/06/08 PHP
PHP结合Jquery和ajax实现瀑布流特效
2016/01/07 PHP
PHP基础之输出缓冲区基本概念、原理分析
2019/06/19 PHP
用js实现计算代码行数的简单方法附代码
2007/08/13 Javascript
JavaScript Sort 表格排序
2009/10/31 Javascript
JS 使用for循环遍历子节点查找元素
2014/09/06 Javascript
javascript创建动态表单的方法
2015/07/25 Javascript
XML文件转化成NSData对象的方法
2015/08/12 Javascript
情人节单身的我是如何在敲完代码之后收到12束玫瑰的(javascript)
2015/08/21 Javascript
JavaScript中的Function函数
2015/08/27 Javascript
jQuery实现的placeholder效果完整实例
2016/08/02 Javascript
解析微信JS-SDK配置授权,实现分享接口
2016/12/09 Javascript
javascript动画系列之模拟滚动条
2016/12/13 Javascript
jQuery自定义元素右键点击事件(实现案例)
2017/04/28 jQuery
浅谈js的解析顺序 作用域 严格模式
2017/10/23 Javascript
vue中的$emit 与$on父子组件与兄弟组件的之间通信方式
2018/05/13 Javascript
node.js到底要不要加分号浅析
2018/07/11 Javascript
js中split()方法得到的数组长度问题
2018/07/19 Javascript
Vue.js的模板语法详解
2020/02/16 Javascript
python基础教程之基本数据类型和变量声明介绍
2014/08/29 Python
Python做简单的字符串匹配详解
2017/03/21 Python
python pandas时序处理相关功能详解
2019/07/03 Python
Python 微信爬虫完整实例【单线程与多线程】
2019/07/06 Python
pywinauto自动化操作记事本
2019/08/26 Python
python数据分析:关键字提取方式
2020/02/24 Python
Python3 ID3决策树判断申请贷款是否成功的实现代码
2020/05/21 Python
Python3开发环境搭建详细教程
2020/06/18 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
2020/10/20 Python
文明家庭先进事迹材
2014/01/27 职场文书
2014年迎新年联欢会活动策划方案
2014/02/26 职场文书
幼儿园开学通知
2015/04/24 职场文书
重阳节活动主持词
2015/07/04 职场文书
2016秋季小学开学寄语
2015/12/03 职场文书
2016年基层党组织创先争优承诺书
2016/03/25 职场文书
好段摘抄大全(48句)
2019/08/08 职场文书
vue3使用vue-router的完整步骤记录
2021/06/20 Vue.js