class_docstr: Provides common code for text vectorizers (tokenization logic).
class_docstr_tok: ["Provides","common","code","for","text","vectorizers","(","tokenization","logic",")","."]
docstr: Compute empty docs ids using the remaining docs, given the total number
  of documents.
docstr_tok: ["Compute","empty","docs","ids","using","the","remaining","docs",",","given","the","total","number","of","documents","."]
code: def _compute_empty_doc_ids(self, count_df, n_doc):
      """
      Compute empty docs ids using the remaining docs, given the total number
      of documents.
      """
      remaining_docs = count_df["doc_id"].unique()
      dtype = min_signed_type(n_doc)
      doc_ids = cudf.DataFrame(
          data={"all_ids": cp.arange(0, n_doc, dtype=dtype)},
          dtype=dtype,
      )
  
      empty_docs = doc_ids - doc_ids.iloc[remaining_docs]
      empty_ids = empty_docs[
          empty_docs["all_ids"].isnull()
      ].index.values
      return empty_ids
  
imports: from cuml.internals.safe_imports import cpu_only_import
  import cuml.internals.logger
  from cudf.utils.dtypes import min_signed_type
  from cuml.internals.type_utils import CUPY_SPARSE_DTYPES
  import numbers
  from cuml.internals.safe_imports import gpu_only_import
  from functools import partial
  from cuml.common.sparsefuncs import create_csr_matrix_from_count_df
  from cuml.common.sparsefuncs import csr_row_normalize_l1, csr_row_normalize_l2
  from cuml.feature_extraction._stop_words import ENGLISH_STOP_WORDS
  from cuml.common.exceptions import NotFittedError
  from cuml.internals.safe_imports import gpu_only_import_from
label_desc: Use image node_id 7 for calling the _VectorizerMixin obj's underlying member method code with example usage: obj._compute_empty_doc_ids(count_df, n_doc) and returns: empty_ids