2017-02-09 18 views
0

行列68x68は、my_matrix [np.tril_indices(68)]によって2346要素のベクトルに変換されます。それを使っていくつかのことを行い、68x68の行列に戻して再構築したいと思います。ベクトルPythonから行列を作る方法

最終的なマトリックスは以下の通りです。私の行列は対角線より下のほうにあるでしょう。残りはゼロになるでしょう。

enter image description here

注:あなたが私の元の行列からの画像を見ることができるようにグリーンがベクトルの値で、赤はゼロです。

答えて

2

再構成するnp.tril_indicesから同じインデックスを使用 -

N = 68 # Number of rows/cols in original array 
r,c = np.tril_indices(N) # Get the lower triangular region indices 

# Initialize o/p array and assign from data_array (2346) elems array 
out = np.zeros((N,N),dtype=data_array.dtype) 
out[r,c] = data_array 
関連する問題