Python解决线性代数问题之矩阵的初等变换方法

 更新时间:2018年12月12日 09:11:47   作者:body_builder  
今天小编就为大家分享一篇Python解决线性代数问题之矩阵的初等变换方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

定义一个矩阵初等行变换的类

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 与文件对象共事的实例

    这篇文章主要介绍了详解 Python 与文件对象共事的实例的相关资料,希望通过本文大家能掌握这部分内容,需要的朋友可以参考下
    2017-09-09
  • Pandas替换NaN值的方法实现

    Pandas替换NaN值的方法实现

    本文主要介绍了Pandas替换NaN值的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • Windows下pycharm创建Django 项目(虚拟环境)过程解析

    Windows下pycharm创建Django 项目(虚拟环境)过程解析

    这篇文章主要介绍了Windows下pycharm创建Django 项目(虚拟环境)过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • 在Apache服务器上同时运行多个Django程序的方法

    在Apache服务器上同时运行多个Django程序的方法

    这篇文章主要介绍了在Apache服务器上同时运行多个Django程序的方法,Django是Python各色高人气web框架中最为著名的一个,需要的朋友可以参考下
    2015-07-07
  • Python中namedtuple 命名元祖的使用

    Python中namedtuple 命名元祖的使用

    本文主要介绍了Python中namedtuple 命名元祖的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • python中的torch常用tensor处理函数示例详解

    python中的torch常用tensor处理函数示例详解

    这篇文章主要介绍了python中的torch常用tensor处理函数,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • PyTorch一小时掌握之神经网络气温预测篇

    PyTorch一小时掌握之神经网络气温预测篇

    这篇文章主要介绍了PyTorch一小时掌握之神经网络气温预测篇,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • Pandas数据类型之category的用法

    Pandas数据类型之category的用法

    Pandas中有一种特殊的数据类型叫做category.它表示的是一个类别,一般用在统计分类中,比如性别,血型,分类,级别等等.有点像java中的enum,今天给大家详细讲解一下category的用法,需要的朋友可以参考下
    2021-06-06
  • python如何获取.csv文件中的某一列或者某些列

    python如何获取.csv文件中的某一列或者某些列

    这篇文章主要介绍了python如何获取.csv文件中的某一列或者某些列问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • 详解Python如何优雅的重试

    详解Python如何优雅的重试

    这篇文章主要为大家介绍了Python如何优雅的重试详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07

最新评论