2016-04-19 10 views
0

こんにちは私はそれの顔に何かに立ち往生している簡単な問題だと思われるので、私は何かを欠場する必要があります!要素の賢明な行列乗算python

私はユーザ値から計算された行列のリストを持っています(不定長です)。 - ttranspose

私はまた、ttransposeの各行列を乗算(行列形式)し、結果として得られる行列のリストを出力したい別の単一行列Qbarを持っています。 < < ttransposeと同じ長さにする必要があります。私は6つの行列(ttranspose)のリストでこれをテストするとき

  def Q_by_transpose(ttranspose, Qmatrix): 
       Q_by_transpose = [] 
       for matrix in ttranspose: 
        Q_by_transpose_ind = np.matmul(ttranspose, Qmatrix) 
        Q_by_transpose.append(Q_by_transpose_ind) 
       return (Q_by_transpose) 

は代わり私は(予想通り)6つの配列であるように見えるが、各アレイが6つの行列で構成されてmtricesの長いリストを取得します?

私はこのリストと別のリストの間で要素ごとの乗算を実行する行列のリストを作成したいと考えています。これを解決すれば、両方の面で助けになります!

ご協力いただければ幸いです!

私はPythonとNumpyには新しいので、皆さんが助けてくれることを期待しています!

おかげ

答えて

1

代わりにnp.matmul機能を単一の行列を渡すので、あなたは行列の全リストを渡していることが表示されます。代わりに

for matrix in ttranspose: 
    Q_by_transpose_ind = np.matmul(ttranspose, Qmatrix) 
    Q_by_transpose.append(Q_by_transpose_ind) 

のこの操作を行う:これは全体ではなく、リストのnp.matmulに1つの行列を渡します

for matrix in ttranspose: 
    Q_by_transpose_ind = np.matmul(matrix, Qmatrix) 
    Q_by_transpose.append(Q_by_transpose_ind) 

。本質的に今のところは、行列のリスト全体に、n回を掛け合わせることです。ここで、nはttransposeの行列の数です。

+0

あなたは先生です、天才です!大変ありがたいことに、私は一日中その1つと戦っています! 愚かなエラー! –