|
2 | 2 | from tqdm import tqdm
|
3 | 3 | import MLP_Model
|
4 | 4 | import sys
|
| 5 | + |
5 | 6 | sys.path.insert(0, '..')
|
6 | 7 | from shared_scripts import DataProcess, Hindcast_Initialization, NSM_SCA
|
7 | 8 | import warnings
|
|
17 | 18 | def sweml_hindcast(new_year, threshold, Region_list, fSCA, frequency, NewSim, single_day):
|
18 | 19 | model = 'Neural_Network'
|
19 | 20 |
|
| 21 | + retries = 0 |
20 | 22 | if single_day:
|
21 |
| - dt = datetime.datetime.now() - datetime.timedelta(days=4) |
22 |
| - datelist = [dt.strftime('%Y-%m-%d')] |
| 23 | + prev_data_flag = True |
| 24 | + days = 4 |
| 25 | + while prev_data_flag and retries < 60: |
| 26 | + dt = datetime.datetime.now() - datetime.timedelta(days=days) |
| 27 | + prev_dt = dt - datetime.timedelta(days=1) |
| 28 | + datelist = [dt.strftime('%Y-%m-%d')] |
| 29 | + if os.path.isfile(f"Predictions/Hold_Out_Year/Daily/fSCA_True/Prediction_DF_SCA_{prev_dt.strftime('%Y-%m-%d')}.pkl"): |
| 30 | + prev_data_flag = False |
| 31 | + else: |
| 32 | + days += 1 |
| 33 | + retries += 1 |
| 34 | + |
23 | 35 | if datelist[0][-5:] == '10-01':
|
24 | 36 | Hindcast_Initialization.Hindcast_Initialization(cwd, datapath, new_year, threshold, Region_list,
|
25 | 37 | frequency, fSCA=fSCA)
|
26 | 38 | else:
|
27 | 39 | datelist = Hindcast_Initialization.Hindcast_Initialization(cwd, datapath, new_year, threshold, Region_list,
|
28 |
| - frequency, fSCA=fSCA) |
| 40 | + frequency, fSCA=fSCA) |
29 | 41 |
|
30 | 42 | # Run data processing script to partition key regional dataframes
|
31 | 43 | # note, need to load RegionTrain_SCA.h5,
|
@@ -73,6 +85,9 @@ def sweml_hindcast(new_year, threshold, Region_list, fSCA, frequency, NewSim, si
|
73 | 85 | for file_type in file_types:
|
74 | 86 | Hindcast_Initialization.Hindcast_to_AWS(modelname, folderpath, AWSpath, file_type)
|
75 | 87 |
|
| 88 | + if retries > 0: |
| 89 | + sweml_hindcast(new_year, threshold, Region_list, fSCA, frequency, NewSim, single_day) |
| 90 | + |
76 | 91 |
|
77 | 92 | if __name__ == "__main__":
|
78 | 93 | new_year = 2023
|
|
0 commit comments