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 splitlines使用技巧
Sep 06 Python
使用Python的Flask框架构建大型Web应用程序的结构示例
Jun 04 Python
django基础之数据库操作方法(详解)
May 24 Python
Python使用正则表达式过滤或替换HTML标签的方法详解
Sep 25 Python
Scrapy的简单使用教程
Oct 24 Python
使用requests库制作Python爬虫
Mar 25 Python
Python OpenCV处理图像之图像像素点操作
Jul 10 Python
对python的unittest架构公共参数token提取方法详解
Dec 17 Python
python中pandas库中DataFrame对行和列的操作使用方法示例
Jun 14 Python
Python 通过正则表达式快速获取电影的下载地址
Aug 17 Python
jupyter使用自动补全和切换默认浏览器的方法
Nov 18 Python
python爬虫爬取图片的简单代码
Jan 18 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
一个基于PDO的数据库操作类
2011/03/24 PHP
PHP调用存储过程返回值不一致问题的解决方法分析
2016/04/26 PHP
php实现微信原生支付(扫码支付)功能
2018/05/30 PHP
PHP中抽象类,接口功能、定义方法示例
2019/02/26 PHP
JS 控制CSS样式表
2009/08/20 Javascript
js动态添加表格数据使用insertRow和insertCell实现
2014/05/22 Javascript
一个JavaScript操作元素定位元素的实例
2014/10/29 Javascript
全面解析JavaScript中的valueOf与toString方法(推荐)
2016/06/14 Javascript
angular 用拦截器统一处理http请求和响应的方法
2017/06/08 Javascript
推荐10款扩展Web表单的JS插件
2017/12/25 Javascript
JavaScript 有用的代码片段和 trick
2018/02/22 Javascript
使用vue-cli打包过程中的步骤以及问题的解决
2018/05/08 Javascript
jQuery实现点击自身以外区域关闭弹出层功能完整示例【改进版】
2018/07/31 jQuery
详解vue-cli下ESlint 配置说明
2018/09/03 Javascript
一步一步实现Vue的响应式(对象观测)
2019/09/02 Javascript
Python中字典的基本知识初步介绍
2015/05/21 Python
详解Python之数据序列化(json、pickle、shelve)
2017/03/30 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
PyCharm的设置方法和第一个Python程序的建立
2019/01/16 Python
解决Django生产环境无法加载静态文件问题的解决
2019/04/23 Python
PyQt5 在label显示的图片中绘制矩形的方法
2019/06/17 Python
matlab灰度图像调整及imadjust函数的用法详解
2020/02/27 Python
python 工具 字符串转numpy浮点数组的实现
2020/03/14 Python
JetBrains PyCharm(Community版本)的下载、安装和初步使用图文教程详解
2020/03/19 Python
NULL是什么,它是怎么定义的
2015/05/09 面试题
IMPORT的选项IGNORE有什么作用?缺省是什么设置?
2015/09/17 面试题
竞选演讲稿范文
2013/12/28 职场文书
园林技术个人的自我评价
2014/01/08 职场文书
导购员的岗位职责
2014/02/08 职场文书
产品发布会策划方案
2014/05/12 职场文书
应届大学生自荐书
2014/06/17 职场文书
课外科技活动总结
2014/08/27 职场文书
创业计划书之小型广告公司
2019/10/22 职场文书
Golang 空map和未初始化map的注意事项说明
2021/04/29 Golang
用Python实现一个打字速度测试工具来测试你的手速
2021/05/28 Python
Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案
2022/04/20 Python