2D массивы - не пот
array = [[1,2],[3,4],[5,6]]
=> [[1, 2], [3, 4], [5, 6]]
array[0][0]
=> 1
array.flatten
=> [1, 2, 3, 4, 5, 6]
array.transpose
=> [[1, 3, 5], [2, 4, 6]]
Для загрузки 2D-массивов попробуйте что-то вроде:
rows, cols = 2,3
mat = Array.new(rows) { Array.new(cols) }