Spaces:
Sleeping
Sleeping
from src.data.load_data import get_data, generate_test_data | |
from src.features.build_features import prepare_data | |
from src.data.preprocess import get_Xy | |
from src.utils.helper_functions import load_models, get_predictions, load_parquet | |
from config import Config | |
import numpy as np | |
import pandas as pd | |
config = vars(Config) | |
def run(forecast_start_date, forecast_end_date): | |
print('Script Executing...') | |
generated_test = generate_test_data(forecast_start_date, | |
forecast_end_date, | |
product_ids=load_parquet(f'{config["fold_input_directory"]}/unique_products.parquet').values) | |
generated_test['date'] = pd.to_datetime(generated_test['date']) | |
# merge the fixed columns | |
generated_test = pd.merge(load_parquet(f'{config["fold_input_directory"]}/fixed_columns.parquet'), | |
generated_test, on=['product_id'], how='right') | |
dataframe = prepare_data( | |
dataframe=pd.concat([generated_test], axis=0), | |
data=None, | |
split_local_test=config['split_local_test'], | |
add_datetime_features=True, | |
add_lag_features=True | |
) | |
dataframe[config['target']] = np.nan | |
X, X_test, y = get_Xy( | |
dataframe=dataframe, | |
not_include=config['not_include_features'], | |
cat_features=config['cat_features'], | |
cat_encoding='category' | |
) | |
models = load_models(config['fold_models_directory']) | |
y_test_preds = get_predictions(models, X_test) | |
generated_test[config['target']] = y_test_preds | |
print('Script Done!') | |
return generated_test | |
# if __name__ == '__main__': | |
# run() |