diff --git a/saqc/flagger/baseflagger.py b/saqc/flagger/baseflagger.py
index f367250b39b5b817a4eb9649edf21a07b08bc7e1..cf5d0931d17f5535dd337ffac23f5f7c436cfa3e 100644
--- a/saqc/flagger/baseflagger.py
+++ b/saqc/flagger/baseflagger.py
@@ -55,8 +55,11 @@ class BaseFlagger:
         return flags
 
     def initFlags(self, data: pd.DataFrame) -> pd.DataFrame:
-        out = data.copy()
-        out[:] = self.flags[0]
+        if isinstance(data, pd.Series):
+            out = pd.Series(data=self.flags[0], index=data.index, name=data.name)
+        if isinstance(data, pd.DataFrame):
+            out = pd.DataFrame(data=self.flags[0], index=data.index, columns=data.columns)
+
         # NOTE:
         # astype conversion of return Dataframe performed
         # seperately, because pd.DataFrame(..., dtype=self.flags)