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实现字符串匹配算法代码示例
Dec 05 Python
Python安装lz4-0.10.1遇到的坑
May 20 Python
python实现爬山算法的思路详解
Apr 09 Python
Python3 实现串口两进程同时读写
Jun 12 Python
Python求均值,方差,标准差的实例
Jun 29 Python
基于python traceback实现异常的获取与处理
Dec 13 Python
Python连接SQLite数据库并进行增册改查操作方法详解
Feb 18 Python
在tensorflow以及keras安装目录查询操作(windows下)
Jun 19 Python
python 将列表里的字典元素合并为一个字典实例
Sep 01 Python
Python中qutip用法示例详解
Oct 02 Python
Python绘图实现台风路径可视化代码实例
Oct 23 Python
Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案
Apr 20 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+DBM的同学录程序(5)
2006/10/09 PHP
PHP 如何向 MySQL 发送数据
2006/10/09 PHP
Mysql数据库操作类( 1127版,提供源码下载 )
2010/12/02 PHP
php数组(array)输出的三种形式详解
2013/06/05 PHP
php curl基本操作详解
2013/07/23 PHP
Linux平台PHP5.4设置FPM线程数量的方法
2016/11/09 PHP
Laravel框架路由设置与使用示例
2018/06/12 PHP
php workerman定时任务的实现代码
2018/12/23 PHP
在 PHP 和 Laravel 中使用 Traits的方法
2019/11/13 PHP
JS写的数字拼图小游戏代码[学习参考]
2008/10/29 Javascript
js实现可拖动DIV的方法
2013/12/17 Javascript
Internet Explorer 11 浏览器介绍:别叫我IE
2014/09/28 Javascript
jQuery实现长按按钮触发事件的方法
2015/02/02 Javascript
JavaScript对象属性检查、增加、删除、访问操作实例
2015/07/08 Javascript
JS基于cookie实现来宾统计记录访客信息的方法
2015/08/04 Javascript
Zero Clipboard实现浏览器复制到剪贴板的方法(多个复制按钮)
2016/03/24 Javascript
JS实现保留n位小数的四舍五入问题示例
2016/08/03 Javascript
AngularJS在IE下取数据总是缓存问题的解决方法
2016/08/05 Javascript
AJAX和jQuery动态加载数据的实现方法
2016/12/05 Javascript
Vue中添加过渡效果的方法
2017/03/16 Javascript
JS实现按钮颜色切换效果
2020/09/05 Javascript
vue项目部署上线遇到的问题及解决方法
2018/06/10 Javascript
js实现无缝轮播图
2020/03/09 Javascript
Python中的闭包总结
2014/09/18 Python
Python迭代器与生成器基本用法分析
2018/07/26 Python
一篇文章搞懂Python的类与对象名称空间
2018/12/10 Python
详解pandas安装若干异常及解决方案总结
2019/01/10 Python
Pytorch的mean和std调查实例
2020/01/02 Python
Python Des加密解密如何实现软件注册码机器码
2020/01/08 Python
带你学习Python如何实现回归树模型
2020/07/16 Python
运动鞋、街头服装、手表和手袋的实时市场:StockX
2020/11/25 全球购物
春季运动会广播稿大全
2014/02/19 职场文书
入党个人总结范文
2015/03/02 职场文书
原告离婚代理词
2015/05/23 职场文书
html中显示特殊符号(附带特殊字符对应表)
2021/06/21 HTML / CSS
Python列表的索引与切片
2022/04/07 Python