Добавление матрицы Ruby в многомерный массив

Многомерный матричный массив выглядит так

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>'

Как мне это сделать. В python/numpy просто делать сложение просто работает?
Что такое рубиновый эквивалент?

НОТА -
arr1 является точечным произведением Matrix[*a] * Matrix[*b] если это имеет значение

1 ответ

Я предполагаю, что вам придется поместить содержимое второй матрицы в первую матрицу, возможно, с помощью оператора spade matrix_1 << matrix_2[0]или .push метод.

PS Я хотел бы добавить, что я никогда не использовал Matrix в ruby, поэтому мое "предположение", но так как это массив, как справедливо предположить, что он имеет массив, как API.

Другие вопросы по тегам