from esm_preprocess import * from esm_JCQ import reverse_jcq_demand_control_scoring questionnaire_name = snakemake.params["questionnaire_name"] df_esm = pd.read_csv(snakemake.input[0]) df_esm_preprocessed = preprocess_esm(df_esm) try: questionnaire_id = QUESTIONNAIRE_IDS[questionnaire_name] except ValueError: print("The requested questionnaire name should be one of the following:") print(QUESTIONNAIRE_IDS.keys()) else: df_esm_selected = df_esm_preprocessed[df_esm_preprocessed["questionnaire_id"] == questionnaire_id] df_esm_clean = clean_up_esm(df_esm_selected) if questionnaire_name.startswith("JCQ"): df_esm_reversed = reverse_jcq_demand_control_scoring(df_esm_clean) df_esm_reversed.to_csv(snakemake.output[0]) else: df_esm_clean.to_csv(snakemake.output[0])