>>> [q,r] = np.linalg.qr(np.array([1,0,0,0,1,1,1,1,1]).reshape(3,3))
R
は、ゼロラインを旋回した二次元アレイであります(テストセット内のすべての例でも証明されています):
>>> print r
[[ 1.41421356 0.70710678 0.70710678]
[ 0. 1.22474487 1.22474487]
[ 0. 0. 0. ]]
[[ 1.41421356 0.70710678 0.70710678]
[ 0. 1.22474487 1.22474487]]
とR_0
:(すべてゼロの行を抽出する)
[[ 0. 0. 0. ]]
今、私は2つの行列R_~
でR
を分割したいです。それはこの解決策に近いと思われる:deleting rows in numpy array。
編集:
さらに興味深い:np.linalg.qr()
はn x n
-matrixを返します。 、どのような私が期待したではない:
A := n x m
Q := n x m
R := n x m
何軸= 0の場合? – denfromufa
軸= 0 'すべてゼロ*列を削除でしょう* '@denfromufa。明白である – ecatmur
は、どのような問題があることは軸= '0'のためであるとして、このフィルタリングは適用できないということで、代わりに移調 – denfromufa