2017-07-03 84 views
0

多維矩陣陣列是這樣紅寶石矩陣除了多維陣列

arr1 = Matrix[[0.9742006046104146, 0.9164380106962612, 0.39571440216724874], 
       [1.3793903493310324, 1.8988033906016721, 1.2768961254764901], 
       [0.42334074004480604, 1.6728495387871951, 1.2575501206006443]] 

另一種簡單的陣列是這樣

arr2 = Matrix[[0.13054527963360518, 0.8579042642337861, 0.3041160868559809]] 

我無法添加兩者一起,arr1 + arr2

ExceptionForMatrix::ErrDimensionMismatch: Matrix dimension mismatch 
    from /home/arjun/.rbenv/versions/2.2.3/lib/ruby/2.2.0/matrix.rb:996:in `+' 
    from (irb):171 
    from /home/arjun/.rbenv/versions/2.2.3/bin/irb:11:in `<main>' 

我該怎麼做。在蟒蛇/ numpy只是做一個加法只是工作?
什麼是Ruby等價物?

注 -
arr1Matrix[*a] * Matrix[*b]點的產品,如果該事項

+2

你期望輸出看起來像什麼?矩陣加法僅在兩個矩陣具有相同尺寸時才能定義,正如您可以從誤差中猜出的那樣。 –

+0

在python中,'arr2'被添加到'arr1'的每一行。 – arjun

回答

2

我猜你不得不第二矩陣的內容推入第一矩陣,可能與或者是鏟子操作員matrix_1 << matrix_2[0].push方法。

p.s.我想補充一點,我從來沒有在Ruby中使用過Matrix,因此我的'猜測',但是因爲它是數組,所以假設它有一個像API這樣的數組是公平的。