class_docstr: Transforms features into isnull flags.
  
  Parameters
  ----------
  null_map : dict, default {'object': ''}
      Map which dictates the values to consider as NaN.
      Keys are the raw types of the features as in self.feature_metadata_in.type_map_raw.
      If a feature's raw type is not present in null_map, np.nan is treated as NaN.
      If a value other than np.nan is specified, np.nan is not considered NaN.
  **kwargs :
      Refer to :class:`AbstractFeatureGenerator` documentation for details on valid key word arguments.
code: def _fit_transform(self, X: DataFrame, **kwargs) -> (DataFrame, dict):
      features = self.feature_metadata_in.get_features()
      self._null_feature_map = dict()
      for feature in features:
          feature_raw_type = (
              self.feature_metadata_in.get_feature_type_raw(feature)
          )
          if feature_raw_type in self.null_map:
              self._null_feature_map[feature] = self.null_map[
                  feature_raw_type
              ]
      X_out = self._transform(X)
      type_family_groups_special = {S_BOOL: list(X_out.columns)}
      return X_out, type_family_groups_special
  
file_path: autogluon/features/src/autogluon/features/generators/isnan.py
imports: import logging
  import numpy
  import pandas
  from pandas import DataFrame
  from autogluon.common.features.types import R_OBJECT, S_BOOL
  from .abstract import AbstractFeatureGenerator
label_desc: Use image node_id 2 for calling the IsNanFeatureGenerator obj's underlying member method code with example usage: obj._fit_transform(X) and returns: X_out,  type_family_groups_special