配列の要素の内積を1つおきに取る簡単な方法はありますか? Soは与えられた:配列の他のすべての要素とのすべての要素のドット積
array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
私は結果を取得したいと思い:
array([ 32., 50., 122.])
すなわち、 a [0]ドットa [1]、a [0]ドットa [2]、a [1]ドットa [2]である。
私が使っている配列は正方形ではありません。これは単なる例です。
ありがとうございます!
関心のある要素だけを抽出したい場合は、 'np.dot(X、X.T)[np.triu_indices_from(X、k = 1)]'を実行します。 –
ありがとうジョー、私が使っている配列は正方形ではありませんが。 – Christoph
注: 'triu_indices_from'はNumpy v.1.4.0で新しく追加されました。 Christoph: 'triu_indices(len(X)、k = 1)'を使うことができます。なぜなら 'X * X.T'は常に正方形であるからです。 –