当前位置:  开发笔记 > 编程语言 > 正文

如何在单位矩阵的对角元素中插入列表元素?

如何解决《如何在单位矩阵的对角元素中插入列表元素?》经验,为你挑选了1个好方法。

我有5x5单位矩阵和浮点数列表

 1 0 0 0 0
 0 1 0 0 0
 0 0 1 0 0
 0 0 0 1 0 
 0 0 0 0 1         L=[0.01, 0.02, 0.26, 0.03, 0.68]

我的问题是如何将列表元素放入单位矩阵?

 0.01 0    0    0    0
 0    0.02 0    0    0
 0    0    0.26 0    0
 0    0    0    0.03 0 
 0    0    0    0    0.68 

谢谢



1> wim..:

此方法可扩展为写入其他数组的对角线,即a不必是单位矩阵:

>>> a = np.eye(5)
>>> L = [0.01, 0.02, 0.26, 0.03, 0.68]
>>> d = np.diag_indices_from(a)
>>> a[d] = L
>>> print(a)
[[ 0.01  0.    0.    0.    0.  ]
 [ 0.    0.02  0.    0.    0.  ]
 [ 0.    0.    0.26  0.    0.  ]
 [ 0.    0.    0.    0.03  0.  ]
 [ 0.    0.    0.    0.    0.68]]

另请注意,在numpy版本1.10+上,np.diagonal(a)实际上将返回可用于修改原始数组的可写视图.

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有