Добавление матрицы 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.