示例#1
0
    def _fit_one_model(
        self,
        model: TimeSeriesForecastingModel,
        X_split: pd.DataFrame,
        results: pd.DataFrame,
        only_model: bool = False,
    ) -> pd.DataFrame:
        """
        Fits one model on a split and calculates its score and fit time

        Parameters
        ----------
        model: BaseEstimator, model to fit
        X_split: pd.DataFrame, subset of training data to fit on
        results: pd.DataFrame, results dataframe to add score results
        only_model: bool, use ``only_model`` property to reuse the fitted features

        Returns
        -------

        """
        start_time = time()
        model_index = self._models_are_equal(model)
        model.cache_features = True
        model.fit(X_split, only_model=only_model)
        scores = model.score(metrics=self.metrics)
        results.loc[[model_index],
                    ["Train score", "Test score"]] = scores.values
        fit_time = time() - start_time
        results.loc[model_index, "Fit time"] = fit_time
        return results
示例#2
0
def time_series_forecasting_model1_cache(features1, model1):
    return TimeSeriesForecastingModel(
        features=features1,
        horizon=2,
        model=model1,
        cache_features=True,
    )
示例#3
0
 def test_constructor(self, features1, model1):
     horizon, cache_features = 2, True
     time_series_forecasting_model = TimeSeriesForecastingModel(
         features=features1,
         horizon=horizon,
         model=model1,
         cache_features=cache_features,
     )
     assert time_series_forecasting_model.features == features1
     assert time_series_forecasting_model.horizon == horizon
     assert time_series_forecasting_model.model == model1
     assert time_series_forecasting_model.cache_features == cache_features