```ruby
class Matrix
  attr_reader :rows, :columns

  def initialize(numbers)
    @rows = numbers.split("\n").map { |row| row.split(' ').map(&:to_i) }
    @columns = rows.transpose
  end
end
```

Remove rows from attr_reader and user better methods in rows
user
```ruby
class Matrix
  attr_reader :columns, :numbers

  def initialize(numbers)
    @numbers = numbers
    @columns = rows.transpose
  end

  def rows
    numbers.lines.map { |row| row.split.map(&:to_i) }
  end
end

```
assistant