diff --git a/modules/icing/util.py b/modules/icing/util.py
index 233d7a4436d798589f531210a8281e8030c79559..818c147781946cff333454dcf6265af68b9810e5 100644
--- a/modules/icing/util.py
+++ b/modules/icing/util.py
@@ -853,13 +853,11 @@ def run_icing_predict(clvrx_dir='/Users/tomrink/data/clavrx/RadC/', output_dir=h
 
         if day_night == 'AUTO' or day_night == 'DAY':
             if num_day_tiles > 0:
-                day_data_dct = {name: [] for name in day_train_params}
-                for name in day_train_params:
-                    for k in day_idxs:
-                        day_data_dct[name].append(data_dct[name][k])
+                day_idxs = np.array(day_idxs)
                 day_grd_dct = {name: None for name in day_train_params}
-                for ds_name in day_train_params:
-                    day_grd_dct[ds_name] = np.stack(day_data_dct[ds_name])
+                for name in day_train_params:
+                    day_grd_dct[name] = data_dct[name][day_idxs, ]
+
                 if use_max_cth_level:
                     day_grd_dct['cth_high_avg'] = day_cth_max
 
@@ -867,7 +865,6 @@ def run_icing_predict(clvrx_dir='/Users/tomrink/data/clavrx/RadC/', output_dir=h
                     model_module.run_evaluate_static_2(day_model, day_grd_dct, num_day_tiles,
                                                        prob_thresh=prob_thresh,
                                                        flight_levels=flight_levels)
-                day_idxs = np.array(day_idxs)
                 for flvl in flight_levels:
                     day_preds = preds_day_dct[flvl]
                     day_probs = probs_day_dct[flvl]
@@ -884,13 +881,11 @@ def run_icing_predict(clvrx_dir='/Users/tomrink/data/clavrx/RadC/', output_dir=h
                     mode = 'DAY'
                     nght_train_params = train_params_dnb
 
-                nght_data_dct = {name: [] for name in nght_train_params}
-                for name in nght_train_params:
-                    for k in nght_idxs:
-                        nght_data_dct[name].append(data_dct[name][k])
+                nght_idxs = np.array(nght_idxs)
                 nght_grd_dct = {name: None for name in nght_train_params}
-                for ds_name in nght_train_params:
-                    nght_grd_dct[ds_name] = np.stack(nght_data_dct[ds_name])
+                for name in nght_train_params:
+                    nght_grd_dct[name] = data_dct[name][nght_idxs, ]
+
                 if use_max_cth_level:
                     nght_grd_dct['cth_high_avg'] = nght_cth_max
 
@@ -898,7 +893,6 @@ def run_icing_predict(clvrx_dir='/Users/tomrink/data/clavrx/RadC/', output_dir=h
                     model_module.run_evaluate_static_2(night_model, nght_grd_dct, num_nght_tiles,
                                                        prob_thresh=prob_thresh,
                                                        flight_levels=flight_levels)
-                nght_idxs = np.array(nght_idxs)
                 for flvl in flight_levels:
                     nght_preds = preds_nght_dct[flvl]
                     nght_probs = probs_nght_dct[flvl]