sum method

dynamic sum([
  1. int? axis = null
])

sum the matrix

  • axis The axis to sum
  • Returns The sum
  • Example

Implementation

dynamic sum([int? axis = null]) {
  if (axis == null) {
    double total = 0;
    for (var i = 0; i < row; i++) {
      for (double column in _matrix[i]) {
        total += column;
      }
    }
    return total;
  }
  if (axis == 1) {
    Matrix matrix = Matrix(_row, 1);
    for (var i = 0; i < _matrix.length; i++) {
      double total = 0;
      for (double column in _matrix[i]) {
        total += column;
      }
      matrix.setAt(i, 0, value: total);
    }
    return matrix;
  } else if (axis == 0) {
    Matrix matrix = Matrix(1, _col);
    for (var i = 0; i < _col; i++) {
      double total = 0;
      for (var j = 0; j < _row; j++) {
        total += _matrix[j][i];
      }
      matrix.setAt(0, i, value: total);
    }
    return matrix;
  } else {
    throw Exception("Axis must be 0 or 1");
  }
}