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: Eliminate duplicate matrix entries by adding them together
  
  The is an *in place* operation
code: def sum_duplicates(self):
      """Eliminate duplicate matrix entries by adding them together
  
      The is an *in place* operation
      """
      if self.has_canonical_format:
          return
      self.sort_indices()
  
      M, N = self._swap(self.shape)
      _sparsetools.csr_sum_duplicates(
          M, N, self.indptr, self.indices, self.data
      )
  
      self.prune()  # nnz may have changed
      self.has_canonical_format = True
  
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 39 for calling the _cs_matrix obj's underlying member method code with example usage: obj.sum_duplicates() without return types