From 03baae5035cf32d3cbb3a3870a824a54b83c26eb Mon Sep 17 00:00:00 2001
From: Peter Luenenschloss <peter.luenenschloss@ufz.de>
Date: Wed, 29 Apr 2020 13:21:52 +0200
Subject: [PATCH] flexibilized data transformation in flagMultivarScores

---
 saqc/funcs/spikes_detection.py | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/saqc/funcs/spikes_detection.py b/saqc/funcs/spikes_detection.py
index 9b1ae4274..666f97da7 100644
--- a/saqc/funcs/spikes_detection.py
+++ b/saqc/funcs/spikes_detection.py
@@ -141,7 +141,12 @@ def spikes_flagMultivarScores(data, field, flagger, fields, trafo='normScale', a
                               expfit_binning='auto', stray_partition=None, stray_partition_min=0,
                               **kwargs):
 
-    trafo = composeFunction(trafo.split(','))
+    trafo_list = trafo.split(',')
+    if len(trafo_list) == 1:
+        trafo_list = trafo_list * len(fields)
+    trafo_dict = {var_name: composeFunction(traffo.split('-')) for (var_name, traffo)
+                  in dict(zip(fields, trafo_list)).items()}
+
     # data fransformation/extraction
     val_frame = data[fields[0]]
 
@@ -153,7 +158,7 @@ def spikes_flagMultivarScores(data, field, flagger, fields, trafo='normScale', a
                              )
 
     val_frame.dropna(inplace=True)
-    val_frame = val_frame.transform(trafo)
+    val_frame = val_frame.transform(trafo_dict)
 
     if threshing == 'stray':
         to_flag_index = _stray(val_frame,
-- 
GitLab