Skip to content

Commit b5050b3

Browse files
Update deeplc.py
1 parent 38ec3de commit b5050b3

File tree

1 file changed

+25
-7
lines changed

1 file changed

+25
-7
lines changed

deeplc/deeplc.py

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1287,7 +1287,7 @@ def calibrate_preds(
12871287
for m_name in pred_dict.keys():
12881288
preds = [sum(a) / len(a) for a in zip(*list(pred_dict[m_name].values()))]
12891289
if len(measured_tr) == 0:
1290-
perf = sum(abs(seq_df["tr"] - preds))
1290+
perf = sum(abs(np.array(seq_df["tr"]) - np.array(preds)))
12911291
else:
12921292
perf = sum(abs(np.array(measured_tr) - np.array(preds)))
12931293

@@ -1297,13 +1297,31 @@ def calibrate_preds(
12971297
% (m_name, perf / len(preds))
12981298
)
12991299

1300-
if perf < best_perf:
1301-
if self.deepcallc_mod:
1302-
m_group_name = "deepcallc"
1303-
else:
1304-
m_group_name = m_name
1305-
# TODO is deepcopy really required?
1300+
try:
1301+
if perf < best_perf:
1302+
if self.deepcallc_mod:
1303+
m_group_name = "deepcallc"
1304+
else:
1305+
m_group_name = m_name
1306+
1307+
# TODO is a deepcopy really required?
1308+
best_calibrate_dict = copy.deepcopy(
1309+
mod_calibrate_dict[m_group_name]
1310+
)
1311+
best_calibrate_min = copy.deepcopy(
1312+
mod_calibrate_min_dict[m_group_name]
1313+
)
1314+
best_calibrate_max = copy.deepcopy(
1315+
mod_calibrate_max_dict[m_group_name]
1316+
)
13061317

1318+
best_model = copy.deepcopy(mod_dict[m_group_name])
1319+
best_perf = perf
1320+
1321+
temp_obs = np.array(measured_tr)
1322+
temp_pred = np.array(preds)
1323+
except:
1324+
# Catch-all to just set the best model to the last one it encountered
13071325
best_calibrate_dict = copy.deepcopy(mod_calibrate_dict[m_group_name])
13081326
best_calibrate_min = copy.deepcopy(mod_calibrate_min_dict[m_group_name])
13091327
best_calibrate_max = copy.deepcopy(mod_calibrate_max_dict[m_group_name])

0 commit comments

Comments
 (0)