class_docstr: base matrix class for compressed row and column oriented matrices
class_docstr_tok: ["base","matrix","class","for","compressed","row","and","column","oriented","matrices"]
docstr: Scalar version of self._binopt, for cases in which no new nonzeros
  are added. Produces a new spmatrix in canonical form.
code: def _scalar_binopt(self, other, op):
      """Scalar version of self._binopt, for cases in which no new nonzeros
      are added. Produces a new spmatrix in canonical form.
      """
      self.sum_duplicates()
      res = self._with_data(op(self.data, other), copy=True)
      res.eliminate_zeros()
      return res
  
imports: from __future__ import division, print_function, absolute_import
  from warnings import warn
  import operator
  import numpy
  from scipy._lib.six import zip
  from scipy._lib._util import _prune_array
  from .base import spmatrix, isspmatrix, SparseEfficiencyWarning
  from .data import _data_matrix, _minmax_mixin
  from .dia import dia_matrix
  from .None import _sparsetools
  from .sputils import upcast, upcast_char, to_native, isdense, isshape, getdtype, isscalarlike, IndexMixin, get_index_dtype, downcast_intp_index, get_sum_dtype, check_shape, matrix, asmatrix
label_desc: Use image node_id 5 for calling the _cs_matrix obj's underlying member method code with example usage: obj._scalar_binopt(other, op) and returns: res