From 751b04f3f44ca14e73347f96b8bf50b2ee1befc0 Mon Sep 17 00:00:00 2001 From: junos Date: Tue, 5 Apr 2022 18:14:37 +0200 Subject: [PATCH] Pass scale names to Snakemake correctly. --- rules/features.smk | 3 ++- src/features/phone_esm/straw/preprocess.py | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/rules/features.smk b/rules/features.smk index 9fc0fde3..c27db7e8 100644 --- a/rules/features.smk +++ b/rules/features.smk @@ -329,7 +329,8 @@ rule preprocess_esm: params: provider=lambda wildcards: config["PHONE_ESM"]["PROVIDERS"][wildcards.provider_key.upper()], provider_key="{provider_key}", - sensor_key="phone_esm" + sensor_key="phone_esm", + scales=lambda wildcards: config["PHONE_ESM"]["PROVIDERS"][wildcards.provider_key.upper()]["SCALES"] output: "data/interim/{pid}/phone_esm_features/phone_esm_clean_{provider_key}.csv" script: "../src/features/phone_esm/straw/preprocess.py" diff --git a/src/features/phone_esm/straw/preprocess.py b/src/features/phone_esm/straw/preprocess.py index 8eae5286..97a883ad 100644 --- a/src/features/phone_esm/straw/preprocess.py +++ b/src/features/phone_esm/straw/preprocess.py @@ -1,7 +1,7 @@ from esm_preprocess import * from esm_JCQ import reverse_jcq_demand_control_scoring -requested_scales = provider["SCALES"] +requested_scales = snakemake.params["scales"] df_esm = pd.read_csv(snakemake.input[0]) df_esm_preprocessed = preprocess_esm(df_esm) @@ -20,5 +20,6 @@ for scale in requested_scales: mask = df_esm_clean["questionnaire_id"] == questionnaire_id if scale.startswith("JCQ"): df_esm_clean.loc[mask] = reverse_jcq_demand_control_scoring(df_esm_clean.loc[mask]) + #TODO Reverse other questionnaires if needed and/or adapt esm_user_score to original scoring. -df_esm_clean.to_csv(snakemake.output[0]) +df_esm_clean.to_csv(snakemake.output[0], index=False)