From f7fbf6d8f1715b7ff7fe46cef4d4303ad9a170cb Mon Sep 17 00:00:00 2001
From: Felix Kleinert <f.kleinert@fz-juelich.de>
Date: Fri, 12 Aug 2022 15:21:23 +0200
Subject: [PATCH] check for NaN values in CRPS part

---
 mlair/run_modules/post_processing.py | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/mlair/run_modules/post_processing.py b/mlair/run_modules/post_processing.py
index feee0782..cb3f9386 100644
--- a/mlair/run_modules/post_processing.py
+++ b/mlair/run_modules/post_processing.py
@@ -222,19 +222,20 @@ class PostProcessing(RunEnvironment):
                                          self.model_type_dim: "ens"}).dropna(self.index_dim)
             obs_station = ds["det"].sel({self.model_type_dim: "obs"}).dropna(self.index_dim)
 
-            new_index = range(idx_counter, idx_counter+len(ens_station[self.index_dim]))
-            ens_reindex = xr.DataArray(data=ens_station.data,
-                                       dims=[self.index_dim, self.ens_realization_dim, self.ahead_dim],
-                                       coords={self.index_dim: new_index,
-                                               self.ens_realization_dim: ens_station.coords[self.ens_realization_dim],
-                                               self.ahead_dim: ens_station.coords[self.ahead_dim]})
-            obs_reindex = xr.DataArray(data=obs_station.data,
-                                       dims=[self.index_dim, self.ahead_dim],
-                                       coords={self.index_dim: new_index,
-                                               self.ahead_dim: ens_station.coords[self.ahead_dim]})
-            collector_ens.append(ens_reindex)
-            collector_obs.append(obs_reindex)
-            idx_counter = new_index[-1]
+            if len(ens_station.coords[self.index_dim]) != 0:
+                new_index = range(idx_counter, idx_counter+len(ens_station[self.index_dim]))
+                ens_reindex = xr.DataArray(data=ens_station.data,
+                                           dims=[self.index_dim, self.ens_realization_dim, self.ahead_dim],
+                                           coords={self.index_dim: new_index,
+                                                   self.ens_realization_dim: ens_station.coords[self.ens_realization_dim],
+                                                   self.ahead_dim: ens_station.coords[self.ahead_dim]})
+                obs_reindex = xr.DataArray(data=obs_station.data,
+                                           dims=[self.index_dim, self.ahead_dim],
+                                           coords={self.index_dim: new_index,
+                                                   self.ahead_dim: ens_station.coords[self.ahead_dim]})
+                collector_ens.append(ens_reindex)
+                collector_obs.append(obs_reindex)
+                idx_counter = new_index[-1]
 
             crps_times = self._calc_crps_for_lead_times(ens_station, obs_station)
 
-- 
GitLab