In [1]:
import seaborn as sns
import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
import scipy as sp
from hydromet.io import read_predictors, read_predictands
from hydromet.system import get_model_config, get_model_dir
%matplotlib inline
from phildb.database import PhilDB
db = PhilDB('hm_tsdb')
In [2]:
config = get_model_config('project', 'LinearRegression')
In [3]:
config['calibration']['end_date']
Out[3]:
In [4]:
predictors = read_predictors(db, config, '410730', 'calibration')
In [5]:
predictands = read_predictands(db, config, '410730', 'calibration')
In [6]:
from hydromet.models.linear_regression import LinearRegressionModel
In [7]:
lrm = LinearRegressionModel()
In [8]:
lrm.calibrate(predictors, predictands)
In [9]:
fc_date = '2010-06-01'
In [10]:
for fc_date in pd.date_range('2010-01-01', '2011-12-01', freq='MS'):
p = read_predictors(db, config, '410730', idx = slice(fc_date, fc_date))
print(lrm.forecast(p)[0][0] - read_predictands(db, config, '410730', idx = slice(fc_date, fc_date))['Q'].values[0])
In [ ]: