如何用Python基于指定向量创建目标对称矩阵?
基于指定向量构造对称矩阵的Python实现
给定向量 m = [1, 0.8, 0.6, 0.4, 0.2, 0],需构造一个6×6的对称矩阵,矩阵中位置(j,i)的值对应向量m中索引为abs(i-j)的元素。
实现代码
import numpy as np m = [1, 0.8, 0.6, 0.4, 0.2, 0] mm = np.zeros((6, 6)) for j in range(6): for i in range(6): ind = abs(i - j) mm[j, i] = m[ind]
最终输出结果
array([[1. , 0.8, 0.6, 0.4, 0.2, 0. ], [0.8, 1. , 0.8, 0.6, 0.4, 0.2], [0.6, 0.8, 1. , 0.8, 0.6, 0.4], [0.4, 0.6, 0.8, 1. , 0.8, 0.6], [0.2, 0.4, 0.6, 0.8, 1. , 0.8], [0. , 0.2, 0.4, 0.6, 0.8, 1. ]])
该结果与需求完全一致!
内容的提问来源于stack exchange,提问作者MacUser
相关产品推荐
相关产品推荐

