4
私は2つのscala配列を持っていますので、それらを掛けたいと思います。配列の転置をscalaにする
val x = Array(Array(1,2),Array(3,4),Array(5,6),Array(7,8),Array(9,10),Array(11,12),Array(13,14),Array(15,16),Array(17,18),Array(19,20),Array(21,22))
val y = Array(2, 5, 9)
私は私がやってzip y
そして、x.transpose
を使用しようとしましたArray.ofDim[Int](3, 2)
val z = Array(Array(1*2 + 3 *2 + 5*2 + 7*2... 2*2 + 4*2 + 6*2 + 8*2...,),Array(1*5 + 3*5 + 5*5 + 7*5... 2*5 + 4*5 + 6*5 + 8*5...,),Array(1*9 + 3 *9 + 5*9 + 7*9... 2*9 + 4*9 + 6*9 + 8*9...,)
を取得したいです。
しかし、それは間違っていました。
どうすればいいですか?
申し訳ありませんが、私のコードは
x.transpose.map(_.sum) zip y map {case(a, b) => a * b }
は、何が間違っていたのですか?あなたが私たちに言わないときに、あなたが試したコードを投稿しないときは、どのように知っていますか? –
申し訳ありませんが、コードを投稿しました –
伝統的な行列乗算を試みていないので、もう少し情報が必要です 従来の行列乗算は、m×n行列とn×x行列を取り、m×o行列を生成する。ここには11 x 2と3 x 1がある –