docstr: Custom fit function for `RegressionModelWithCategoricalCovariates` models, adding logic to let the model
  handle categorical features directly.
docstr_tok: ["Custom","fit","function","for","`","RegressionModelWithCategoricalCovariates","`","models",",","adding","logic","to","let","the","model","handle","categorical","features","directly","."]
code: def _fit_model(
      self,
      target_series,
      past_covariates,
      future_covariates,
      max_samples_per_ts,
      **kwargs,
  ):
      """
      Custom fit function for `RegressionModelWithCategoricalCovariates` models, adding logic to let the model
      handle categorical features directly.
      """
      cat_col_indices, _ = self._get_categorical_features(
          target_series,
          past_covariates,
          future_covariates,
      )
  
      cat_param_name, cat_param_default = self._categorical_fit_param
      kwargs[cat_param_name] = (
          cat_col_indices if cat_col_indices else cat_param_default
      )
      super()._fit_model(
          target_series=target_series,
          past_covariates=past_covariates,
          future_covariates=future_covariates,
          max_samples_per_ts=max_samples_per_ts,
          **kwargs,
      )
  
imports: from collections import OrderedDict
  from typing import Any, Callable, Dict, List, Optional, Sequence, Tuple, Union
  import numpy
  import pandas
  from sklearn.linear_model import LinearRegression
  from darts.logging import get_logger, raise_if, raise_if_not, raise_log
  from darts.models.forecasting.forecasting_model import GlobalForecastingModel
  from darts.timeseries import TimeSeries
  from darts.utils.data.tabularization import add_static_covariates_to_lagged_data, create_lagged_component_names, create_lagged_training_data
  from darts.utils.historical_forecasts import _check_optimizable_historical_forecasts_global_models, _optimized_historical_forecasts_all_points, _optimized_historical_forecasts_last_points_only, _process_historical_forecast_input
  from darts.utils.multioutput import MultiOutputRegressor
  from darts.utils.utils import _check_quantiles, get_single_series, seq2series, series2seq
label_desc: Use image node_id 6 for calling the RegressionModelWithCategoricalCovariates obj's underlying member method code with example usage: obj._fit_model(target_series, past_covariates, future_covariates, max_samples_per_ts) without return types