2
行のノルムで行列を効率的にソートする方法(numpy.ndarraysを使用)?numpy 2D配列を関数ごとにソート(対称)します。 (ノルム)
は、私は、行列Aをソートしたい:
A = np.array(([ 10, 1, 6, 3 ],
[ 1,12, 2, 4 ],
[ 6, 2,14, 5 ],
[ 3, 4, 5, 9 ]))
その行のノルムで。
ここでは、ノルムのリストを作成し、そのリストのインデックスリストを取得し、そのインデックスリストに基づいてマトリックスをソートすることです。これは道のりですか?
indexlist = np.argsort(np.apply_along_axis(np.linalg.norm, 0, A))
#indexlist = array([3, 0, 1, 2])
次にソートされたリスト。
sortedA = A[indexlist]
と対称でソートされたリストは、
sym_sortedA = A[indexlist][:,indexlist]