diff --git a/modules/icing/pirep_goes.py b/modules/icing/pirep_goes.py
index 976198a2311287deb38768683c012b6c374eeb44..d1d7fae73824469eb89b502c502b1aa452cb54b4 100644
--- a/modules/icing/pirep_goes.py
+++ b/modules/icing/pirep_goes.py
@@ -1772,8 +1772,8 @@ def tiles_info(filename):
     print('Icing 6:  ', np.sum(iint == 6))
 
 
-def analyze(preds_file, truth_file='/Users/tomrink/data/icing_ml/tiles_202109240000_202111212359_l2_test_v3_DAY.h5'):
-    h5f = h5py.File(truth_file, 'r')
+def analyze(preds_file, test_file='/Users/tomrink/data/icing_ml/tiles_202109240000_202111212359_l2_test_v3_DAY.h5'):
+    h5f = h5py.File(test_file, 'r')
     nda = h5f['flight_altitude'][:]
     iint = h5f['icing_intensity'][:]
     cld_hgt = h5f['cld_height_acha'][:]
@@ -1823,6 +1823,9 @@ def analyze(preds_file, truth_file='/Users/tomrink/data/icing_ml/tiles_202109240
     print('----------------------------')
     print('-----------------------------')
 
+    if preds_file is None:
+        return
+
     labels, prob_avg, cm_avg = pickle.load(open(preds_file, 'rb'))
 
     preds = np.where(prob_avg > 0.5, 1, 0)
@@ -1830,68 +1833,69 @@ def analyze(preds_file, truth_file='/Users/tomrink/data/icing_ml/tiles_202109240
     true_ice = (labels == 1) & (preds == 1)
     false_ice = (labels == 0) & (preds == 1)
 
-    print('True icing:     ', np.histogram(nda[true_ice], bins=5)[0])
-    print('---------------------------')
-    print('False icing:    ', np.histogram(nda[false_ice], bins=5)[0])
-    print('---------------------------')
-
-    true_no_ice = (labels == 0) & (preds == 0)
-    false_no_ice = (labels == 1) & (preds == 0)
-
-    print('True no icing:  ', np.histogram(nda[true_no_ice], bins=5)[0])
-    print('---------------------------')
-    print('False no icing: ', np.histogram(nda[false_no_ice], bins=5)[0])
-    print('---------------------------')
-
+    print('Total (Positive/Icing Prediction: ')
+    print('True icing:                   ', np.histogram(nda[true_ice], bins=5)[0])
+    print('-------------------------')
+    print('False icing (False Positive/Alarm):    ', np.histogram(nda[false_ice], bins=5)[0])
+    print('By flight level:')
     print('level 0: ')
-    print(np.nanmean(cld_dz[(nda == 0) & false_no_ice]), np.nanmean(cld_hgt[(nda == 0) & false_no_ice]))
-    print(np.nanmean(cld_dz[(nda == 0) & true_no_ice]), np.nanmean(cld_hgt[(nda == 0) & true_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 0) & false_ice]), np.nanmean(cld_hgt[(nda == 0) & false_ice]))
+    print(np.nanmean(cld_dz[(nda == 0) & true_ice]), np.nanmean(cld_hgt[(nda == 0) & true_ice]))
     print('------------')
 
     print('level 1: ')
-    print(np.nanmean(cld_dz[(nda == 1) & false_no_ice]), np.nanmean(cld_hgt[(nda == 1) & false_no_ice]))
-    print(np.nanmean(cld_dz[(nda == 1) & true_no_ice]), np.nanmean(cld_hgt[(nda == 1) & true_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 1) & false_ice]), np.nanmean(cld_hgt[(nda == 1) & false_ice]))
+    print(np.nanmean(cld_dz[(nda == 1) & true_ice]), np.nanmean(cld_hgt[(nda == 1) & true_ice]))
     print('------------')
 
     print('level 2: ')
-    print(np.nanmean(cld_dz[(nda == 2) & false_no_ice]), np.nanmean(cld_hgt[(nda == 2) & false_no_ice]))
-    print(np.nanmean(cld_dz[(nda == 2) & true_no_ice]), np.nanmean(cld_hgt[(nda == 2) & true_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 2) & false_ice]), np.nanmean(cld_hgt[(nda == 2) & false_ice]))
+    print(np.nanmean(cld_dz[(nda == 2) & true_ice]), np.nanmean(cld_hgt[(nda == 2) & true_ice]))
     print('------------')
 
     print('level 3: ')
-    print(np.nanmean(cld_dz[(nda == 3) & false_no_ice]), np.nanmean(cld_hgt[(nda == 3) & false_no_ice]))
-    print(np.nanmean(cld_dz[(nda == 3) & true_no_ice]), np.nanmean(cld_hgt[(nda == 3) & true_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 3) & false_ice]), np.nanmean(cld_hgt[(nda == 3) & false_ice]))
+    print(np.nanmean(cld_dz[(nda == 3) & true_ice]), np.nanmean(cld_hgt[(nda == 3) & true_ice]))
     print('------------')
 
     print('level 4: ')
-    print(np.nanmean(cld_dz[(nda == 4) & false_no_ice]), np.nanmean(cld_hgt[(nda == 4) & false_no_ice]))
-    print(np.nanmean(cld_dz[(nda == 4) & true_no_ice]), np.nanmean(cld_hgt[(nda == 4) & true_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 4) & false_ice]), np.nanmean(cld_hgt[(nda == 4) & false_ice]))
+    print(np.nanmean(cld_dz[(nda == 4) & true_ice]), np.nanmean(cld_hgt[(nda == 4) & true_ice]))
+    print('-------------')
+    print('-------------')
 
-    print('----------------------------')
+    true_no_ice = (labels == 0) & (preds == 0)
+    false_no_ice = (labels == 1) & (preds == 0)
+
+    print('Total (Negative/No Icing Prediction: ')
+    print('True no icing:         ', np.histogram(nda[true_no_ice], bins=5)[0])
+    print('-------------------------')
+    print('* False no icing (False Negative/Miss) *: ', np.histogram(nda[false_no_ice], bins=5)[0])
+    print('-------------------------')
 
     print('level 0: ')
-    print(np.nanmean(cld_dz[(nda == 0) & false_ice]), np.nanmean(cld_hgt[(nda == 0) & false_ice]))
-    print(np.nanmean(cld_dz[(nda == 0) & true_ice]), np.nanmean(cld_hgt[(nda == 0) & true_ice]))
+    print(np.nanmean(cld_dz[(nda == 0) & false_no_ice]), np.nanmean(cld_hgt[(nda == 0) & false_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 0) & true_no_ice]), np.nanmean(cld_hgt[(nda == 0) & true_no_ice]))
     print('------------')
 
     print('level 1: ')
-    print(np.nanmean(cld_dz[(nda == 1) & false_ice]), np.nanmean(cld_hgt[(nda == 1) & false_ice]))
-    print(np.nanmean(cld_dz[(nda == 1) & true_ice]), np.nanmean(cld_hgt[(nda == 1) & true_ice]))
+    print(np.nanmean(cld_dz[(nda == 1) & false_no_ice]), np.nanmean(cld_hgt[(nda == 1) & false_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 1) & true_no_ice]), np.nanmean(cld_hgt[(nda == 1) & true_no_ice]))
     print('------------')
 
     print('level 2: ')
-    print(np.nanmean(cld_dz[(nda == 2) & false_ice]), np.nanmean(cld_hgt[(nda == 2) & false_ice]))
-    print(np.nanmean(cld_dz[(nda == 2) & true_ice]), np.nanmean(cld_hgt[(nda == 2) & true_ice]))
+    print(np.nanmean(cld_dz[(nda == 2) & false_no_ice]), np.nanmean(cld_hgt[(nda == 2) & false_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 2) & true_no_ice]), np.nanmean(cld_hgt[(nda == 2) & true_no_ice]))
     print('------------')
 
     print('level 3: ')
-    print(np.nanmean(cld_dz[(nda == 3) & false_ice]), np.nanmean(cld_hgt[(nda == 3) & false_ice]))
-    print(np.nanmean(cld_dz[(nda == 3) & true_ice]), np.nanmean(cld_hgt[(nda == 3) & true_ice]))
+    print(np.nanmean(cld_dz[(nda == 3) & false_no_ice]), np.nanmean(cld_hgt[(nda == 3) & false_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 3) & true_no_ice]), np.nanmean(cld_hgt[(nda == 3) & true_no_ice]))
     print('------------')
 
     print('level 4: ')
-    print(np.nanmean(cld_dz[(nda == 4) & false_ice]), np.nanmean(cld_hgt[(nda == 4) & false_ice]))
-    print(np.nanmean(cld_dz[(nda == 4) & true_ice]), np.nanmean(cld_hgt[(nda == 4) & true_ice]))
+    print(np.nanmean(cld_dz[(nda == 4) & false_no_ice]), np.nanmean(cld_hgt[(nda == 4) & false_no_ice]))
+    print(np.nanmean(cld_dz[(nda == 4) & true_no_ice]), np.nanmean(cld_hgt[(nda == 4) & true_no_ice]))
 
 
 def get_training_parameters(day_night='DAY', l1b_andor_l2='BOTH'):