parameters: (spmatrix, accept_sparse, dtype, copy,
                            force_all_finite)
return_statement: return spmatrix
docstring: Convert a sparse matrix to a given format.
  
      Checks the sparse format of spmatrix and converts if necessary.
  
      Parameters
      ----------
      spmatrix : scipy sparse matrix
          Input to validate and convert.
  
      accept_sparse : string, list of string or None (default=None)
          String[s] representing allowed sparse matrix formats ('csc',
          'csr', 'coo', 'dok', 'bsr', 'lil', 'dia'). None means that sparse
          matrix input will raise an error.  If the input is sparse but not in
          the allowed format, it will be converted to the first listed format.
  
      dtype : string, type or None (default=none)
          Data type of result. If None, the dtype of the input is preserved.
  
      copy : boolean (default=False)
          Whether a forced copy will be triggered. If copy=False, a copy might
          be triggered by a conversion.
  
      force_all_finite : boolean (default=True)
          Whether to raise an error on np.inf and np.nan in X.
  
      Returns
      -------
      spmatrix_converted : scipy sparse matrix.
          Matrix that is ensured to have an allowed type.
docstring_summary: Convert a sparse matrix to a given format.
docstring_tokens: Convert a sparse matrix to a given format .
function: def _ensure_sparse_format(spmatrix, accept_sparse, dtype, copy,
                            force_all_finite):
      """Convert a sparse matrix to a given format.
  
      Checks the sparse format of spmatrix and converts if necessary.
  
      Parameters
      ----------
      spmatrix : scipy sparse matrix
          Input to validate and convert.
  
      accept_sparse : string, list of string or None (default=None)
          String[s] representing allowed sparse matrix formats ('csc',
          'csr', 'coo', 'dok', 'bsr', 'lil', 'dia'). None means that sparse
          matrix input will raise an error.  If the input is sparse but not in
          the allowed format, it will be converted to the first listed format.
  
      dtype : string, type or None (default=none)
          Data type of result. If None, the dtype of the input is preserved.
  
      copy : boolean (default=False)
          Whether a forced copy will be triggered. If copy=False, a copy might
          be triggered by a conversion.
  
      force_all_finite : boolean (default=True)
          Whether to raise an error on np.inf and np.nan in X.
  
      Returns
      -------
      spmatrix_converted : scipy sparse matrix.
          Matrix that is ensured to have an allowed type.
      """
      if accept_sparse in [None, False]:
          raise TypeError('A sparse matrix was passed, but dense '
                          'data is required. Use X.toarray() to '
                          'convert to a dense numpy array.')
      if dtype is None:
          dtype = spmatrix.dtype
  
      changed_format = False
      if (isinstance(accept_sparse, (list, tuple))
              and spmatrix.format not in accept_sparse):
          # create new with correct sparse
          spmatrix = spmatrix.asformat(accept_sparse[0])
          changed_format = True
  
      if dtype != spmatrix.dtype:
          # convert dtype
          spmatrix = spmatrix.astype(dtype)
      elif copy and not changed_format:
          # force copy
          spmatrix = spmatrix.copy()
  
      if force_all_finite:
          if not hasattr(spmatrix, "data"):
              warnings.warn("Can't check %s sparse matrix for nan or inf."
                            % spmatrix.format)
          else:
              _assert_all_finite(spmatrix.data)
      return spmatrix
function_tokens: def _ensure_sparse_format ( spmatrix , accept_sparse , dtype , copy , force_all_finite ) : if accept_sparse in [ None , False ] : raise TypeError ( 'A sparse matrix was passed, but dense ' 'data is required. Use X.toarray() to ' 'convert to a dense numpy array.' ) if dtype is None : dtype = spmatrix . dtype changed_format = False if ( isinstance ( accept_sparse , ( list , tuple ) ) and spmatrix . format not in accept_sparse ) : # create new with correct sparse spmatrix = spmatrix . asformat ( accept_sparse [ 0 ] ) changed_format = True if dtype != spmatrix . dtype : # convert dtype spmatrix = spmatrix . astype ( dtype ) elif copy and not changed_format : # force copy spmatrix = spmatrix . copy ( ) if force_all_finite : if not hasattr ( spmatrix , "data" ) : warnings . warn ( "Can't check %s sparse matrix for nan or inf." % spmatrix . format ) else : _assert_all_finite ( spmatrix . data ) return spmatrix