From 39751ae299639462e3ab3ac11f58c3d8dce6d27d Mon Sep 17 00:00:00 2001
From: lukas leufen <l.leufen@fz-juelich.de>
Date: Tue, 8 Mar 2022 09:42:58 +0100
Subject: [PATCH] moved get_X_original to DataHandlerFilter

---
 .../data_handler_mixed_sampling.py            | 30 -------------------
 .../data_handler/data_handler_with_filter.py  | 15 ++++++++++
 2 files changed, 15 insertions(+), 30 deletions(-)

diff --git a/mlair/data_handler/data_handler_mixed_sampling.py b/mlair/data_handler/data_handler_mixed_sampling.py
index 6c256f86..0bdd9b21 100644
--- a/mlair/data_handler/data_handler_mixed_sampling.py
+++ b/mlair/data_handler/data_handler_mixed_sampling.py
@@ -283,21 +283,6 @@ class DataHandlerMixedSamplingWithClimateFirFilter(DataHandlerClimateFirFilter):
                                                                dh_transformation=dh_transformation[1], **kwargs)
             return {"filtered": transformation_filtered, "unfiltered": transformation_unfiltered}
 
-    def get_X_original(self):
-        if self.use_filter_branches is True:
-            X = []
-            for data in self._collection:
-                if hasattr(data, "filter_dim"):
-                    X_total = data.get_X()
-                    filter_dim = data.filter_dim
-                    for filter_name in data.filter_dim_order:
-                        X.append(X_total.sel({filter_dim: filter_name}, drop=True))
-                else:
-                    X.append(data.get_X())
-            return X
-        else:
-            return super().get_X_original()
-
 
 class DataHandlerMixedSamplingWithClimateAndFirFilter(DataHandlerMixedSamplingWithClimateFirFilter):
     # data_handler = DataHandlerMixedSamplingWithClimateFirFilterSingleStation
@@ -457,18 +442,3 @@ class DataHandlerMixedSamplingWithClimateAndFirFilter(DataHandlerMixedSamplingWi
             else:  # if no unfiltered meteo branch
                 transformation_res["filtered_meteo"] = transformation_meteo
         return transformation_res if len(transformation_res) > 0 else None
-
-    def get_X_original(self):
-        if self.use_filter_branches is True:
-            X = []
-            for data in self._collection:
-                if hasattr(data, "filter_dim"):
-                    X_total = data.get_X()
-                    filter_dim = data.filter_dim
-                    for filter_name in data.filter_dim_order:
-                        X.append(X_total.sel({filter_dim: filter_name}, drop=True))
-                else:
-                    X.append(data.get_X())
-            return X
-        else:
-            return super().get_X_original()
diff --git a/mlair/data_handler/data_handler_with_filter.py b/mlair/data_handler/data_handler_with_filter.py
index 997ecbf5..47ccc551 100644
--- a/mlair/data_handler/data_handler_with_filter.py
+++ b/mlair/data_handler/data_handler_with_filter.py
@@ -116,6 +116,21 @@ class DataHandlerFilter(DefaultDataHandler):
         self.use_filter_branches = use_filter_branches
         super().__init__(*args, **kwargs)
 
+    def get_X_original(self):
+        if self.use_filter_branches is True:
+            X = []
+            for data in self._collection:
+                if hasattr(data, "filter_dim"):
+                    X_total = data.get_X()
+                    filter_dim = data.filter_dim
+                    for filter_name in data.filter_dim_order:
+                        X.append(X_total.sel({filter_dim: filter_name}, drop=True))
+                else:
+                    X.append(data.get_X())
+            return X
+        else:
+            return super().get_X_original()
+
 
 class DataHandlerFirFilterSingleStation(DataHandlerFilterSingleStation):
     """Data handler for a single station to be used by a superior data handler. Inputs are FIR filtered."""
-- 
GitLab