iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >SymPy库关于矩阵的基本操作和运算方法是什么
  • 526
分享到

SymPy库关于矩阵的基本操作和运算方法是什么

2023-07-05 11:07:54 526人浏览 独家记忆
摘要

这篇“SymPy库关于矩阵的基本操作和运算方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SymPy库关于矩阵的基本

这篇“SymPy库关于矩阵的基本操作和运算方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SymPy库关于矩阵的基本操作和运算方法是什么”文章吧。

1、矩阵创建

矩阵的创建过程被理解为提供了一组行向量。 A matrix is constructed by providing a list of row vectors that make up the matrix.

import sympymatrix_a = sympy.Matrix([[1, 3], [-2, 3]])  # 生成2*2的方阵matrix_b = sympy.Matrix([[1, 0, 2], [2, 3, 4]])  # 生成2*3的矩形矩阵

2、创建列向量

list对象被理解为一个列向量。 a list of elements is considered to be a column vector.

column_vector_a = sympy.Matrix([1, 2, 1])

3、截取矩阵的某一行或列, 使用 row()和 col()

print(matrix_b.col(0))  # 打印第一列print(matrix_b.row(0))  # 打印第一行print(matrix_b.col(-1))  # 打印倒数第一列print(matrix_b.row(-1))  # 打印倒数第一行

4、删除行向量、列向量

使用 row_del 或 col_del. 注意下:这些操作直接修改原来的矩阵对象,不会生成新的对象。

matrix_c = sympy.Matrix([[1, 0, 2, 4], [2, 3, 4, 0], [0, 1, 1, 1]])matrix_c.row_del(0)  # 删除第一行matrix_c.col_del(1)  # 删除第二列

5、插入行向量、列向量使用row_insert 或 col_insert。

insert注意三个点: (1)产生新的矩阵对象 (2)第一参数指的是插入位置,第二个参数是需要插入的内容 (3)注意区分插入行向量和列向量,Matrix()括号内略有不同,具体看下面的代码:

matrix_d = sympy.Matrix([[1, 0, -1], [-5, 3, 4]])
matrix_d_insert_col = matrix_d.col_insert(0, sympy.Matrix([8, 9]))  # 在第一列插入列向量[8,9]
# print(matrix_d_insert_col)
matrix_d_insert_row = matrix_d.row_insert(0, sympy.Matrix([[1, 1, 1]]))  # 在第一行插入行向量
# print(matrix_d_insert_row)

6、像加法、乘法这样的简单运算使用+,*, **就可以了

求逆矩阵,只需把power设置为-1即可。 simple operations like addition and multiplication are done just by using +, *, and **. To find the inverse of a matrix, just raise it to the -1 power.

"""矩阵乘法"""matrix_multiplication = matrix_a * matrix_b#  print(matrix_multiplication) """矩阵求逆,如果不可逆,报错NonInvertibleMatrixError: Matrix det == 0; not invertible."""matrix_inverse = matrix_a ** -1# print(matrix_inverse) """矩阵转置"""matrix_transpose = matrix_a.T# print(matrix_transpose)

7、特殊矩阵的创建

"""生成单位矩阵,eye(n) will create an  identity matrix"""matrix_identity = sympy.eye(2)  # 生成二阶单位矩阵# print(matrix_identity) """生成n*m的零矩阵,zeros(m,n)"""matrix_zero = sympy.zeros(2, 3)  # 生成2*3的零矩阵# print(matrix_zero) """生成元素都是1的矩阵,ones(m,n)"""matrix_one = sympy.ones(2, 2)  # 生成2*2的元素都为1的方阵# print(matrix_one) """生成对角矩阵,diag(),参数可以是数字,也可以是矩阵The arguments to diag can be either numbers or matrices. A number is interpreted as a  matrix. The matrices are stacked diaGonally. """matrix_diag_1 = sympy.diag(1, 2, 3)  # 生成对角线元素为1,2,3的三阶方阵# print(matrix_diag_1)matrix_diag_2 = sympy.diag(1, sympy.ones(2, 2), sympy.Matrix([[1, 2], [1, 3]]))# print(matrix_diag_2)

以上就是关于“SymPy库关于矩阵的基本操作和运算方法是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。

--结束END--

本文标题: SymPy库关于矩阵的基本操作和运算方法是什么

本文链接: https://www.lsjlt.com/news/351260.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SymPy库关于矩阵的基本操作和运算方法是什么
    这篇“SymPy库关于矩阵的基本操作和运算方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SymPy库关于矩阵的基本...
    99+
    2023-07-05
  • SymPy库关于矩阵的基本操作和运算
    目录1、矩阵创建2、创建列向量3、截取矩阵的某一行或列, 使用 row()和 col()4、删除行向量、列向量5、插入行向量、列向量使用row_insert 或 col_insert...
    99+
    2023-03-10
    SymPy矩阵操作 SymPy矩阵运算
  • Java字符串操作、基本运算方法等优化方法是什么
    本篇内容主要讲解“Java字符串操作、基本运算方法等优化方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java字符串操作、基本运算方法等优化方法是什么”吧!字符串操作优化字符串对象字符...
    99+
    2023-06-17
  • 空值合并运算符 '??'的操作和运用的方法是什么
    这篇文章主要讲解了“空值合并运算符 ''的操作和运用的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“空值合并运算符 '&#...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作