0.05)) + [0.975, 0.99] forecast_date = pd.to_datetime(forecast_start) currentEpiWeek = Week.fromdate(forecast_date) forecast = { 'quantile': [], 'target_end_date': [], 'value': [], 'type': [], 'location': [], 'target': [] } for place in places: prior_samples, mcmc_samples, post_pred_samples, forecast_samples = util.load_samples( place, path=samples_directory) forecast_samples = forecast_samples['mean_z_future'] t = pd.date_range(start=forecast_start, periods=forecast_samples.shape[1], freq='D') weekly_df = pd.DataFrame(index=t, data=np.transpose(forecast_samples)).resample( "1w", label='left').last() weekly_df[weekly_df < 0.] = 0. for time, samples in weekly_df.iterrows(): for q in allQuantiles: deathPrediction = np.percentile(samples, q * 100) forecast["quantile"].append("{:.3f}".format(q)) forecast["value"].append(deathPrediction) forecast["type"].append("quantile") forecast["location"].append(place)
import pandas as pd import numpy as np import sys import covid.util as util import covid.models.SEIRD_incident as model_type ### get daily incident sub_file = sys.argv[1] samples_directory = sys.argv[2] model = model_type.SEIRD() prior_samples, mcmc_samples, post_pred_samples, forecast_samples = util.load_samples( samples_directory + "US" + ".npz") forecast_samples = model.get(forecast_samples, 'z', forecast=True) mean_forecast_samples = np.mean(forecast_samples, axis=0) data = util.load_state_data() sub = pd.read_csv(sub_file, dtype=str) # verify less than 4 weeks targets = np.unique(sub.target.values) if (len(targets) > 4): print("Error: more than 4 week ahead present") print(targets) else: print("Success: only 4 week ahead or fewer present") # verify fips codes are length 5 fips = np.unique(sub.location.values) lengths = [len(str(k)) == 2 for k in fips] if (all(lengths) == False):
import pandas as pd import numpy as np import sys import covid.util as util import covid.models.SEIRD_incident as model_type ### get daily incident sub_file = sys.argv[1] samples_directory = sys.argv[2] model = model_type.SEIRD() prior_samples, mcmc_samples, post_pred_samples, forecast_samples = util.load_samples(samples_directory + "CA-Los Angeles" +".npz") forecast_samples = model.get(forecast_samples, 'dy',forecast=True) mean_forecast_samples = np.mean(forecast_samples,axis=0) data = util.load_county_data() sub = pd.read_csv(sub_file,dtype=str) # verify less than 4 weeks targets = np.unique(sub.target.values) if (len(targets) > 4): print ("Error: more than 4 week ahead present") else: print ("Success: only 4 week ahead or fewer present") # verify fips codes are length 5