本文实例讲述了Python创建对称矩阵的方法。分享给大家供大家参考,具体如下:

对称(实对称)矩阵也即:

step 1:创建一个方阵

>>> import numpy as np

>>> X = np.random.rand(5**2).reshape(5, 5)

>>> X

array([[ 0.26984148, 0.25408384, 0.12428487, 0.0194565 , 0.91287708],

[ 0.31837673, 0.35493156, 0.74336268, 0.31810561, 0.04409245],

[ 0.06644445, 0.8967897 , 0.10990936, 0.05036292, 0.72581982],

[ 0.94758512, 0.21375975, 0.36781736, 0.1633904 , 0.36070709],

[ 0.53263787, 0.18380491, 0.0225521 , 0.91239367, 0.75521585]])

step 2:保留其上三角部分

>>> X = np.triu(X)

# 保留其上三角部分

>>> X

array([[ 0.26984148, 0.25408384, 0.12428487, 0.0194565 , 0.91287708],

[ 0. , 0.35493156, 0.74336268, 0.31810561, 0.04409245],

[ 0. , 0. , 0.10990936, 0.05036292, 0.72581982],

[ 0. , 0. , 0. , 0.1633904 , 0.36070709],

[ 0. , 0. , 0. , 0. , 0.75521585]])

step 3:将上三角”拷贝”到下三角部分

>>> X += X.T - np.diag(X.diagonal())

>>> X

array([[ 0.26984148, 0.25408384, 0.12428487, 0.0194565 , 0.91287708],

[ 0.25408384, 0.35493156, 0.74336268, 0.31810561, 0.04409245],

[ 0.12428487, 0.74336268, 0.10990936, 0.05036292, 0.72581982],

[ 0.0194565 , 0.31810561, 0.05036292, 0.1633904 , 0.36070709],

[ 0.91287708, 0.04409245, 0.72581982, 0.36070709, 0.75521585]])

注意,要减去一次对角线上的元素。因为上三角cov,和下三角cov.T在进行相加时会把主对角线上的元素相加两次。

step 4:测试

>>> X.T == X

array([[ True, True, True, True, True],

[ True, True, True, True, True],

[ True, True, True, True, True],

[ True, True, True, True, True],

[ True, True, True, True, True]], dtype=bool)

更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》、《Python正则表达式用法总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

您可能感兴趣的文章:Python使用numpy产生正态分布随机数的向量或矩阵操作示例Python中的Numpy矩阵操作Python numpy 提取矩阵的某一行或某一列的实例Python编程给numpy矩阵添加一列方法示例基于Python Numpy的数组array和矩阵matrix详解python中numpy的矩阵、多维数组的用法Python numpy中矩阵的基本用法汇总Python中矩阵库Numpy基本操作详解python 读取文件并把矩阵转成numpy的两种方法详解python中Numpy的属性与创建矩阵python+numpy实现的基本矩阵操作示例

python创建矩阵_Python创建对称矩阵的方法示例【基于numpy模块】相关推荐

  1. python进行矩阵计算公式_纯python进行矩阵的相乘运算的方法示例

    本文介绍了纯python进行矩阵的相乘运算的方法示例,分享给大家,具体如下: def matrixMultiply(A, B): # 获取A的行数和列数 A_row, A_col = shape(A) ...

  2. python矩阵乘法算法_纯python进行矩阵的相乘运算的方法示例

    本文介绍了纯python进行矩阵的相乘运算的方法示例,分享给大家,具体如下: def matrixMultiply(A, B): # 获取A的行数和列数 A_row, A_col = shape(A) ...

  3. python创建矩阵_Python创建二维数组的正确姿势

    List (列表)是 Python 中最基本的数据结构.在用法上,它有点类似数组,因为每个列表都有一个下标,下标从 0 开始.因此,我们可以使用 list[1] 来获取下标对应的值.如果我们深入下列表 ...

  4. mysql特殊字段名称_Mysql必读MySQL创建带特殊字符的数据库名称方法示例

    <MysqL必读MysqL创建带特殊字符的数据库名称方法示例>要点: 本文介绍了MysqL必读MysqL创建带特殊字符的数据库名称方法示例,希望对您有用.如果有疑问,可以联系我们. 文章抓 ...

  5. mysql 数据库名称 特殊字符_Mysql必读MySQL创建带特殊字符的数据库名称方法示例...

    <Mysql必读MySQL创建带特殊字符的数据库名称方法示例>要点: 本文介绍了Mysql必读MySQL创建带特殊字符的数据库名称方法示例,希望对您有用.如果有疑问,可以联系我们. MYS ...

  6. python pandas合并单元格_利用Python pandas对Excel进行合并的方法示例

    前言 在网上找了很多Python处理Excel的方法和代码,都不是很尽人意,所以自己综合网上各位大佬的方法,自己进行了优化,具体的代码如下. 博主也是新手一枚,代码肯定有很多需要优化的地方,欢迎各位大 ...

  7. python中出栈的方法,python中栈的原理及实现方法示例

    python中栈的原理及实现方法示例 本文实例讲述了python中栈的原理及实现方法.分享给大家供大家参考,具体如下: 栈(stack),有些地方称为堆栈,是一种容器,可存入数据元素.访问元素.删除元 ...

  8. python判断矩阵是否对称_Python创建对称矩阵的方法示例【基于numpy模块】

    本文实例讲述了Python创建对称矩阵的方法.分享给大家供大家参考,具体如下: 对称(实对称)矩阵也即: step 1:创建一个方阵 >>> import numpy as np & ...

  9. python建立列表_python创建列表和向列表添加元素的实现方法

    今天的学习内容是python中的列表的相关内容. 一.创建列表 1.创建一个普通列表 >>> tabulation1 = ['大圣','天蓬','卷帘'] >>> ...

最新文章

  1. 在FC7上安装xmms
  2. oracle的结构是什么,Oracle的软件结构是什么呢?
  3. TODO;FIXME;XXX
  4. Springboot项目中的favicon
  5. stp:spanning tree protocol 生成树基本原理
  6. 吴恩达 coursera ML 第十一课总结+作业答案
  7. Python爬虫开发:贴吧案例
  8. SEAM学习(一)-----安装运行example
  9. oracle数据库应用与开发习题,《Oracle数据库应用》练习题及答案.docx
  10. 数据仓库:Oracle Exadata和Netezza的比较
  11. 合并要素--how to use ConstructUnion
  12. [html] 精确获取页面元素位置的方式有哪些?
  13. 【C语言】一堆数组中存放了10个小于100的整数,请编程对所有数据按照从小到大的顺序进行排序,若个位数相等,则按照十位从小到大的顺序排序,输出排序后的结果...
  14. c#下如何生成安装程序
  15. 图解PCIE原理(从软件角度)
  16. 利用kali Linux破解WiFi密码
  17. Python常用模块大全(总结)
  18. 组合导航GPS+IMU
  19. AIDA64内存与缓存测试过了算稳定吗_【AMD R52600X】装机实录、基本特性介绍及性能测试...
  20. 邱锡鹏《神经网络与深度学习》—— 部分习题答案整理

热门文章

  1. java 练习6 交通工具
  2. 怎样在 Centos 6.8 中安装 Elasticsearch 5.2
  3. 回顾Spirng ioc 控制反转
  4. 天了噜,我国4G用户超过2亿了!
  5. ASP.NET判断当前日期是第几周
  6. UVA 694-The Collatz Sequence
  7. 不得不赞! CV算法工程师的高效利器
  8. ​智能驾驶疆场,海天瑞声的「数据」纵横论
  9. 每年扫码千亿次!微信官方开源了自家优化的二维码引擎!3行代码让你拥有微信扫码能力...
  10. 【项目合作】海隆石油工业集团诚邀巡检识别工程合作伙伴