import argparse from azureml.core import Dataset, Run from sklearn.externals import joblib parser = argparse.ArgumentParser() parser.add_argument( '--target_column_name', type=str, dest='target_column_name', help='Target Column Name') parser.add_argument( '--test_dataset', type=str, dest='test_dataset', help='Test Dataset') args = parser.parse_args() target_column_name = args.target_column_name test_dataset_id = args.test_dataset run = Run.get_context() ws = run.experiment.workspace # get the input dataset by id test_dataset = Dataset.get_by_id(ws, id=test_dataset_id) X_test_df = test_dataset.drop_columns(columns=[target_column_name]).to_pandas_dataframe().reset_index(drop=True) y_test_df = test_dataset.with_timestamp_columns(None).keep_columns(columns=[target_column_name]).to_pandas_dataframe() fitted_model = joblib.load('model.pkl') y_pred, X_trans = fitted_model.rolling_evaluation(X_test_df, y_test_df.values) # Add predictions, actuals, and horizon relative to rolling origin to the test feature data assign_dict = {'horizon_origin': X_trans['horizon_origin'].values, 'predicted': y_pred, target_column_name: y_test_df[target_column_name].values} df_all = X_test_df.assign(**assign_dict) file_name = 'outputs/predictions.csv' export_csv = df_all.to_csv(file_name, header=True) # Upload the predictions into artifacts run.upload_file(name=file_name, path_or_stream=file_name)