from argparse import ArgumentParser, FileType import numpy as np import pandas as p import statsmodels.formula.api as smf import datetime as dt import pickle from pymodels import thirtyoffset, predweather, harmonic from pprint import pprint def main(): parser = ArgumentParser(description= 'Predict from harmonic model of cluster') parser.add_argument("-m", "--model-file", dest="model_file", help="filename for models", default="../models/testmod.pkl", type=FileType('rb')) # parser.add_argument("-w", "--weather", dest="weather", # help="input weather pickle path", # metavar="PATH", required=True, # type=FileType('rb')) parser.add_argument("--weather-harmonics", dest="weather_harmonics", help="number of harmonics for weather; default: 2", type=int, default=2, metavar="NUM") parser.add_argument("--icp-harmonics", dest="icp_harmonics", nargs=3, help="harmonics for icp fitting, default 2 3 3", default=[2, 3, 3], type=int, metavar="NUM") args = parser.parse_args() print(args) mods = pickle.load(args.model_file) pprint(mods) print(mods["max_temp"].predict()) print(predweather(mods["max_temp"], "2019-01-01", "2019-02-01", harmonics = mods["weather_harmonics"])) args.model_file.close() if __name__ == "__main__": main()