class_docstr: Implements an ML preprocessing operation.
  
  Preprocessors are stateful objects that can be fitted against a Dataset and used
  to transform both local data batches and distributed data. For example, a
  Normalization preprocessor may calculate the mean and stdev of a field during
  fitting, and uses these attributes to implement its normalization transform.
  
  Preprocessors can also be stateless and transform data without needed to be fitted.
  For example, a preprocessor may simply remove a column, which does not require
  any state to be fitted.
  
  If you are implementing your own Preprocessor sub-class, you should override the
  following:
  
  * ``_fit`` if your preprocessor is stateful. Otherwise, set
    ``_is_fittable=False``.
  * ``_transform_pandas`` and/or ``_transform_numpy`` for best performance,
    implement both. Otherwise, the data will be converted to the match the
    implemented method.
docstr: Batch format hint for upstream producers to try yielding best block format.
  
  The preferred batch format to use if both `_transform_pandas` and
  `_transform_numpy` are implemented. Defaults to Pandas.
  
  Can be overriden by Preprocessor classes depending on which transform
  path is the most optimal.
docstr_tok: ["Batch","format","hint","for","upstream","producers","to","try","yielding","best","block","format",".","The","preferred","batch","format","to","use","if","both","`","_transform_pandas","`","and","`","_transform_numpy","`","are","implemented",".","Defaults","to","Pandas",".","Can","be","overriden","by","Preprocessor","classes","depending","on","which","transform","path","is","the","most","optimal","."]
code: def preferred_batch_format(cls) -> BatchFormat:
      """Batch format hint for upstream producers to try yielding best block format.
  
      The preferred batch format to use if both `_transform_pandas` and
      `_transform_numpy` are implemented. Defaults to Pandas.
  
      Can be overriden by Preprocessor classes depending on which transform
      path is the most optimal.
      """
      return BatchFormat.PANDAS
  
imports: import abc
  import base64
  import collections
  import pickle
  import warnings
  from enum import Enum
  from typing import TYPE_CHECKING, Any, Dict, Optional, Union
  from ray.air.util.data_batch_conversion import BatchFormat
  from ray.util.annotations import Deprecated, DeveloperAPI, PublicAPI
label_desc: Use image node_id 15 for calling the Preprocessor obj's underlying member method code with example usage: obj.preferred_batch_format(cls) and returns: BatchFormat