class_docstr: Encodes missing values for both numerical and categorical features.
  
  Several strategies are possible in each case.
  
  Parameters
  ----------
  numerical_strategy : str or float or int. default = "mean"
      The strategy to encode NA for numerical features.
      Available strategies = "mean", "median",
      "most_frequent" or a float/int value
  
  categorical_strategy : str, default = '<NULL>'
      The strategy to encode NA for categorical features.
      Available strategies = a string or "most_frequent"
docstr: Fits NA Encoder and transforms the dataset.
  
  Parameters
  ----------
  df_train : pandas.Dataframe of shape = (n_train, n_features)
      The train dataset with numerical and categorical features.
  
  y_train : pandas.Series of shape = (n_train, ), default = None
      The target for classification or regression tasks.
  
  Returns
  -------
  pandas.Dataframe of shape = (n_train, n_features)
      The train dataset with no missing values.
code: def fit_transform(self, df_train, y_train=None):
      """Fits NA Encoder and transforms the dataset.
  
      Parameters
      ----------
      df_train : pandas.Dataframe of shape = (n_train, n_features)
          The train dataset with numerical and categorical features.
  
      y_train : pandas.Series of shape = (n_train, ), default = None
          The target for classification or regression tasks.
  
      Returns
      -------
      pandas.Dataframe of shape = (n_train, n_features)
          The train dataset with no missing values.
  
      """
      self.fit(df_train, y_train)
  
      return self.transform(df_train)
  
file_path: MLBox/mlbox/encoding/na_encoder.py
imports: import pandas
  import warnings
  from sklearn.impute import SimpleImputer
label_desc: Use image node_id 5 for calling the NA_encoder obj's underlying member method code with example usage: obj.fit_transform(df_train, y_train) and returns: self