code: def count(
      s: Union[TokenSeries, TextSeries],
      max_features: Optional[int] = None,
      min_df=1,
      max_df=1.0,
      binary=False,
  ) -> pd.DataFrame:
      """
      Represent a text-based Pandas Series using count.
  
      Rows of the returned DataFrame represent documents whereas
      columns are terms. The value in the cell document-term is
      the number of the term in this document. The output is sparse.
      TODO add tutorial link
  
      The input Series should already be tokenized. If not, it will
      be tokenized before count is calculated.
  
      Parameters
      ----------
      s : Pandas Series (tokenized)
  
      max_features : int, optional, default=None
          Maximum number of features to keep. Will keep all features if set to
          None.
  
      min_df : float in range [0.0, 1.0] or int, optional, default=1
          When building the vocabulary ignore terms that have a document
          frequency (number of documents they appear in) strictly
          lower than the given threshold.
          If float, the parameter represents a proportion of documents,
          integer absolute counts.
  
      max_df : float in range [0.0, 1.0] or int, optional, default=1.0
          Ignore terms that have a document frequency (number of documents they
          appear in) frequency strictly higher than the given threshold.
          If float, the parameter represents a proportion of documents, integer
          absolute counts.
  
      binary : bool, optional, default=False
          If True, all non zero counts are set to 1.
  
      Examples
      --------
      >>> import texthero as hero
      >>> import pandas as pd
      >>> s = pd.Series(["Sentence one", "Sentence two"]).pipe(hero.tokenize)
      >>> hero.count(s) # doctest: +SKIP
         Sentence  one  two
      0         1    1    0
      1         1    0    1
  
      See Also
      --------
  
      TODO add tutorial link
      """
      # TODO. Can be rewritten without sklearn.
  
      # Check if input is tokenized. Else, print warning and tokenize.
      if not isinstance(s.iloc[0], list):
          warnings.warn(
              _not_tokenized_warning_message, DeprecationWarning
          )
          s = preprocessing.tokenize(s)
  
      tf = CountVectorizer(
          max_features=max_features,
          tokenizer=lambda x: x,
          preprocessor=lambda x: x,
          min_df=min_df,
          max_df=max_df,
          binary=binary,
      )
  
      tf_vectors_csr = tf.fit_transform(s)
  
      return pd.DataFrame.sparse.from_spmatrix(
          tf_vectors_csr, s.index, tf.get_feature_names()
      )
  
imports: import pandas
  import numpy
  from sklearn.feature_extraction.text import TfidfVectorizer, CountVectorizer
  from sklearn.manifold import TSNE
  from sklearn.decomposition import PCA, NMF
  from sklearn.cluster import KMeans, DBSCAN, MeanShift
  from sklearn.metrics.pairwise import cosine_similarity
  from sklearn.preprocessing import normalize
  from scipy.sparse import coo_matrix
  from typing import Optional, Union, Any
  from texthero._types import TextSeries, TokenSeries, VectorSeries, DataFrame, InputSeries
  from texthero import preprocessing
  import logging
  import warnings
label_desc: Use image node_id 1 for calling a global function with example usage: count(s, max_features, min_df, max_df, binary) and returns: pd