iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python实现由数组生成对称矩阵
  • 131
分享到

python实现由数组生成对称矩阵

2024-04-02 19:04:59 131人浏览 泡泡鱼

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

摘要

在实际应用中,经常会遇上这样的小需求:根据一段给定的数组,生成由这一段数组值构成的对称矩阵。 例如,给定数组[1,2,3,4,5,6,7,8,9,10],要求生成如下的矩阵: [

在实际应用中,经常会遇上这样的小需求:根据一段给定的数组,生成由这一段数组值构成的对称矩阵。

例如,给定数组[1,2,3,4,5,6,7,8,9,10],要求生成如下的矩阵:


[[0,1,2,3,4],
 [1,0,5,6,7],
 [2,5,0,8,9],
 [3,6,8,0,10],
 [4,7,9,10,0]]

其中,对角元全为0,该类型的矩阵完全由给定的数组决定。

笔者给出实现以上功能的一种python参考代码如下:


def semi_to_full(m):
    import numpy as np
    n = len(m)
    n_matrix = int((1+int((1+8*n)**0.5))/2)
    semi_matrix = np.zeros((n_matrix,n_matrix),dtype='int32')

    start_index = 0
    for row in range(n_matrix-1):
        end_index = start_index+(n_matrix-1-row)
        semi_matrix[row,row+1:]=m[start_index:end_index]
        start_index = end_index

    full_matrix = semi_matrix+semi_matrix.T
    
    return full_matrix

代码逻辑如此:先得到数组长度以推定出所欲生成矩阵的规格,接着按照数组值的顺序生成矩阵的上对角元,最后利用对称性完成整个矩阵输出。

该函数参数只有一个,即给定的numpy数组。

到此这篇关于Python实现由数组生成对称矩阵的文章就介绍到这了,更多相关由数组生成对称矩阵内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python实现由数组生成对称矩阵

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

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

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

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

下载Word文档
猜你喜欢
  • python实现由数组生成对称矩阵
    在实际应用中,经常会遇上这样的小需求:根据一段给定的数组,生成由这一段数组值构成的对称矩阵。 例如,给定数组[1,2,3,4,5,6,7,8,9,10],要求生成如下的矩阵: [...
    99+
    2024-04-02
  • 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
  • python如何生成任意n阶的三对角矩阵
    目录如何生成任意n阶的三对角矩阵python矩阵分成上三角下三角和对角三个矩阵如何生成任意n阶的三对角矩阵 数学作业要求实现共轭梯度法的算法。 题目中的矩阵A是n=400/500/6...
    99+
    2024-04-02
  • C++实现矩阵对称正交化的示例代码
    1.python代码 import numpy as np import pandas as pd df=pd.DataFrame() df['fac_01']=(34, 45,...
    99+
    2024-04-02
  • Python numpy生成矩阵基础用法实例代码
    目录1、numpy.array() 可以把列表转换为矩阵2、numpy.arange() 生成一个向量3、numpy.ones() 生成一个全是1的矩阵, 里面填入矩阵范围4、num...
    99+
    2024-04-02
  • 转换矩阵、平移矩阵、旋转矩阵关系以及python实现旋转矩阵、四元数、欧拉角之间转换
    文章目录 1. 转换矩阵、平移矩阵、旋转矩阵之间的关系2. 缩放变换、平移变换和旋转变换2. python实现旋转矩阵、四元数、欧拉角互相转化 由于在平时总是或多或少的遇到平移旋转的问题,...
    99+
    2023-09-17
    python 变换矩阵 旋转矩阵 欧拉角四元数 平移矩阵
  • numpy数组合并和矩阵拼接的实现
    Numpy中提供了concatenate,append, stack类(包括hsatck、vstack、dstack、row_stack、column_stack),r_和c_等类和...
    99+
    2024-04-02
  • numpy如何实现数组合并和矩阵拼接
    这篇文章给大家分享的是有关numpy如何实现数组合并和矩阵拼接的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Numpy中提供了concatenate,append, stack类(包括hsatck、vstack、...
    99+
    2023-06-14
  • pytorch中矩阵乘法和数组乘法怎么实现
    本篇内容介绍了“pytorch中矩阵乘法和数组乘法怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、torch.mul该乘法可简单理...
    99+
    2023-07-05
  • PHP如何使用数组循环来实现矩阵乘法
    这篇文章主要介绍“PHP如何使用数组循环来实现矩阵乘法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP如何使用数组循环来实现矩阵乘法”文章能帮助大家解决问题。什么是矩阵乘法在数学中,一个矩阵是由...
    99+
    2023-07-06
  • 如何进行Python矩阵转置中的二维数组的实际操作
    本篇文章给大家分享的是有关如何进行Python矩阵转置中的二维数组的实际操作,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。如果你对Python矩阵转置的实际应用操作方案的转置不...
    99+
    2023-06-17
  • R语言-实现按日期分组求皮尔森相关系数矩阵
    R语言按日期分组求相关系数 前几天得到了3700+支股票一周内的波动率,想要计算每周各个股票之间的相关系数并将其可视化。最终结果保存在制定文件夹中。 部分数据如下: 先读取数据 ...
    99+
    2024-04-02
  • java 数组实现学生成绩统计教程
    目录一、项目名称二、项目描述1、项目简介2、程序要求三、说明主要讲讲做这题的过程中遇到的问题吧关于数组操作的10大方法1、打印Java数组中的元素2、从Array中创建ArrayLi...
    99+
    2024-04-02
  • Python中怎么实现一个生成器函数
    Python中怎么实现一个生成器函数,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1.生成器在 Python 中,一边循环一边计算的机制,称为生成器(Generator);生成...
    99+
    2023-06-02
  • 利用Python实现自动生成数据日报
    目录前言需求详解数据处理前言 人生苦短,快学Python! 日报,是大部分打工人绕不过的难题。 对于管理者来说,日报是事前管理的最好抓手,可以了解团队的氛围和状态。可对于员工来说,那...
    99+
    2024-04-02
  • Python读取Excel数据实现批量生成PPT
    目录背景需求准备PPT数据PPT模板实战导入相关模块读取电影数据读取PPT模板插入数据背景 大家好,我是J哥。 我们常常面临着大量的重复性工作,通过人工方式处理往往耗时耗力易出错。而...
    99+
    2024-04-02
  • python怎么实现按概率生成随机数
    可以使用Python中的random模块来生成随机数。如果要按照给定的概率分布生成随机数,可以使用random.choices()方...
    99+
    2023-10-24
    python
  • 如何使用Python读取实时生成的数组文件?
    Python是一个强大的编程语言,常用于数据处理、机器学习、人工智能等领域。在处理数据时,我们通常需要读取实时生成的数组文件,以便进一步分析和处理数据。本文将介绍如何使用Python读取实时生成的数组文件。 一、什么是数组文件? 数组文件是...
    99+
    2023-07-06
    实时 数组 文件
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作