Python Numpy:将数组转换为三角矩阵

Python Numpy:将数组转换为三角矩阵,python,numpy,linear-algebra,Python,Numpy,Linear Algebra,我正在寻找一种内置的方法来将线性阵列转换为三角矩阵。由于我未能找到一个,我请求帮助实现一个 想象一下这样的阵列: In [203]: dm Out[203]: array([ 0.80487805, 0.90243902, 0.85365854, ..., 0.95121951, 0.90243902, 1. ]) In [204]: dm.shape Out[204]: (2211,) 我想把这个数组转换成三角形矩阵或对称矩形矩阵

我正在寻找一种内置的方法来将线性阵列转换为三角矩阵。由于我未能找到一个,我请求帮助实现一个

想象一下这样的阵列:

In [203]: dm
Out[203]: array([ 0.80487805,  0.90243902,  0.85365854, ...,  0.95121951,
                  0.90243902,  1.        ])

In [204]: dm.shape
Out[204]: (2211,)
我想把这个数组转换成三角形矩阵或对称矩形矩阵

 In [205]: reshapedDm = dm.trian_reshape(67, 67)
我将如何实现trian_重塑作为从一维数组返回三角形矩阵的函数

>>> tri = np.zeros((67, 67))
>>> tri[np.triu_indices(67, 1)] = dm
有关详细信息,请参阅。要获得下三角矩阵,请使用
np.tril_索引
,并将偏移设置为
-1
,而不是
1