iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >怎么使用Python实现生成对角矩阵和对角块矩阵
  • 143
分享到

怎么使用Python实现生成对角矩阵和对角块矩阵

2023-07-06 02:07:54 143人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍了怎么使用python实现生成对角矩阵和对角块矩阵的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Python实现生成对角矩阵和对角块矩阵文章都会有所收获,下面我们一起来看看吧。对角矩阵s

这篇文章主要介绍了怎么使用python实现生成对角矩阵和对角块矩阵的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Python实现生成对角矩阵和对角块矩阵文章都会有所收获,下面我们一起来看看吧。

    对角矩阵

    scipy中的函数

    在scipy.linalg中,通过tri(N, M=None, k=0, dtype=None)可生成N×M对角矩阵,若M=None,则M默认为N。k表示矩阵中用1填充的次对角线个数。

    print(tri(3,5,2,dtype=int))'''[[1 1 1 0 0] [1 1 1 1 0] [1 1 1 1 1]]'''

    在numpy中也提供了多种对角矩阵生成函数,包括diag, diagflat, tri, tril, triu等,

    numpy.diagflat

    diagflat用于生成对角矩阵,diag在diagflat基础上,添加了提取对角元素的功能,例如

    >>> np.diagflat([1,2,3])array([[1, 0, 0],       [0, 2, 0],       [0, 0, 3]])>>> np.diag([1,2,3])array([[1, 0, 0],       [0, 2, 0],       [0, 0, 3]])>>> np.diag(np.ones([3,3])) #提取对角元素array([1., 1., 1.])

    numpy.tri

    tri(M,N,k)用于生成M行N列的三角阵,其元素为0或者1,k用于调节0和1的分界线相对于对角线的位置,例如

    >>> np.tri(3,5,1)array([[1., 1., 0., 0., 0.],       [1., 1., 1., 0., 0.],       [1., 1., 1., 1., 0.]])>>> np.tri(3,5,2)array([[1., 1., 1., 0., 0.],       [1., 1., 1., 1., 0.],       [1., 1., 1., 1., 1.]])>>> np.tri(3,5,3)array([[1., 1., 1., 1., 0.],       [1., 1., 1., 1., 1.],       [1., 1., 1., 1., 1.]])

    tril, triu可用于提取出矩阵的左下和右上的三角阵,其输入参数除了待提取矩阵之外,另一个参数与tri中的k相同。

    x = np.arange(12).reshape(4,3)>>> np.tril(x,-1)array([[ 0,  0,  0],       [ 3,  0,  0],       [ 6,  7,  0],       [ 9, 10, 11]])>>> np.triu(x,-1)array([[ 0,  1,  2],       [ 3,  4,  5],       [ 0,  7,  8],       [ 0,  0, 11]])

    对角块矩阵

    对于scipy.linalg.block_diag(A,B,C)而言,会生成如下形式矩阵

    怎么使用Python实现生成对角矩阵和对角块矩阵

    from scipy.linalg import *import numpy as npA = np.ones([2,2])B = np.round(np.random.rand(3,3),2)C = np.diag([1,2,3])bd = block_diag(A,B,C)print(bd)'''[[1.   1.   0.   0.   0.   0.   0.   0.  ] [1.   1.   0.   0.   0.   0.   0.   0.  ] [0.   0.   0.8  0.38 0.41 0.   0.   0.  ] [0.   0.   0.84 0.45 0.24 0.   0.   0.  ] [0.   0.   0.32 0.22 0.25 0.   0.   0.  ] [0.   0.   0.   0.   0.   1.   0.   0.  ] [0.   0.   0.   0.   0.   0.   2.   0.  ] [0.   0.   0.   0.   0.   0.   0.   3.  ]]'''

    其中

    怎么使用Python实现生成对角矩阵和对角块矩阵

    关于“怎么使用Python实现生成对角矩阵和对角块矩阵”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“怎么使用Python实现生成对角矩阵和对角块矩阵”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网Python频道。

    --结束END--

    本文标题: 怎么使用Python实现生成对角矩阵和对角块矩阵

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

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

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

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

    下载Word文档
    猜你喜欢
    • Python实现生成对角矩阵和对角块矩阵
      目录对角矩阵scipy中的函数numpy.diagflatnumpy.tri对角块矩阵对角矩阵 scipy中的函数 在scipy.linalg中,通过tri(N, M=None, k...
      99+
      2023-05-15
      Python生成对角矩阵 Python生成对角块矩阵 Python生成矩阵 Python矩阵
    • Python生成对角矩阵和对角块矩阵
      文章目录 对角矩阵scipy中的函数numpy.diagflatnumpy.tri 对角块矩阵 对角矩阵 scipy中的函数 在scipy.linalg中,通过tri(N, M=...
      99+
      2023-10-09
      python numpy scipy 对角矩阵 对角块矩阵
    • 怎么使用Python实现生成对角矩阵和对角块矩阵
      这篇文章主要介绍了怎么使用Python实现生成对角矩阵和对角块矩阵的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Python实现生成对角矩阵和对角块矩阵文章都会有所收获,下面我们一起来看看吧。对角矩阵s...
      99+
      2023-07-06
    • 怎么生成对角矩阵numpy.diag
      本文小编为大家详细介绍“怎么生成对角矩阵numpy.diag”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么生成对角矩阵numpy.diag”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。生成对角矩阵 nump...
      99+
      2023-06-30
    • 如何生成对角矩阵numpy.diag
      目录生成对角矩阵 numpy.diagnumpy.diag()结构及用法||参数参数详解示例生成对角矩阵 numpy.diag 给定对角线上元素,我想生成对角矩阵,在网上搜了一下,竟...
      99+
      2024-04-02
    • python如何生成任意n阶的三对角矩阵
      目录如何生成任意n阶的三对角矩阵python矩阵分成上三角下三角和对角三个矩阵如何生成任意n阶的三对角矩阵 数学作业要求实现共轭梯度法的算法。 题目中的矩阵A是n=400/500/6...
      99+
      2024-04-02
    • python实现由数组生成对称矩阵
      在实际应用中,经常会遇上这样的小需求:根据一段给定的数组,生成由这一段数组值构成的对称矩阵。 例如,给定数组[1,2,3,4,5,6,7,8,9,10],要求生成如下的矩阵: [...
      99+
      2024-04-02
    • 转换矩阵、平移矩阵、旋转矩阵关系以及python实现旋转矩阵、四元数、欧拉角之间转换
      文章目录 1. 转换矩阵、平移矩阵、旋转矩阵之间的关系2. 缩放变换、平移变换和旋转变换2. python实现旋转矩阵、四元数、欧拉角互相转化 由于在平时总是或多或少的遇到平移旋转的问题,...
      99+
      2023-09-17
      python 变换矩阵 旋转矩阵 欧拉角四元数 平移矩阵
    • 使用python实现矩阵
      文章目录 矩阵__init____getitem____setitem__reshape__repr____add__ 与 __mul____matmul__LU分解转置利用LU分解求行列式 ...
      99+
      2023-10-25
      python 矩阵 算法 学习
    • 如何使用Python生成Hilbert矩阵
      目录1.什么是Hilbert矩阵矩阵2.找规律3.代码展示4.输出展示5.初始化解为1,1,(1)以生3*4的增广矩阵为例(2)输出结果1.什么是Hilbert矩阵矩阵 下面分别列举...
      99+
      2024-04-02
    • mat矩阵和npy矩阵怎么实现互相转换
      这篇“mat矩阵和npy矩阵怎么实现互相转换”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“mat矩阵和npy矩阵怎么实现互相...
      99+
      2023-07-02
    • python生成单位阵或对角阵的三种方式小结
      目录python生成单位阵或对角阵1.identity2.eye3.diag(可以指定对角元素)python创建对角阵的np.eye()函数看下面两个例子就明白用法啦python生成...
      99+
      2024-04-02
    • python生成单位阵或对角阵的三种方式是什么
      本篇内容介绍了“python生成单位阵或对角阵的三种方式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!python生成单位阵或对角阵前...
      99+
      2023-06-30
    • Java如何求一个3*3矩阵对角线元素之和
      这篇文章主要为大家展示了“Java如何求一个3*3矩阵对角线元素之和”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Java如何求一个3*3矩阵对角线元素之和”这...
      99+
      2024-04-02
    • python共现矩阵怎么实现
      本篇内容主要讲解“python共现矩阵怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python共现矩阵怎么实现”吧!什么是共现矩阵比如我们有两句话:ls = [&#...
      99+
      2023-07-06
    • python二维矩阵怎么实现
      Python中可以使用列表(list)来表示二维矩阵。可以通过嵌套列表的方式来表示二维矩阵的行和列。 以下是几种创建二维矩阵的方法:...
      99+
      2023-10-22
      python
    • python旋转矩阵怎么实现
      要实现矩阵的旋转,可以使用numpy库中的rot90函数。下面是一个简单的示例代码: import numpy as np # 创...
      99+
      2023-10-21
      python
    • 使用Python怎么求逆矩阵
      使用Python怎么求逆矩阵?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。import numpy as np kern...
      99+
      2023-06-08
    • Python numpy生成矩阵基础用法实例代码
      目录1、numpy.array() 可以把列表转换为矩阵2、numpy.arange() 生成一个向量3、numpy.ones() 生成一个全是1的矩阵, 里面填入矩阵范围4、num...
      99+
      2024-04-02
    • Python列表矩阵转置怎么实现
      要实现Python列表的矩阵转置,可以使用zip函数。下面是一个示例代码:```pythondef transpose(matrix...
      99+
      2023-09-29
      Python
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作