def convert_to_raw_data(data, dep_var, scalar_vars, cat_vars, cat_var_treatment_vals): """ Convert structured data to raw data, e.g. categorical variable to dummies. """ scalar_var_str = ' + '.join(scalar_vars) cat_var_str = ' + '.join( list( map(lambda x: 'C(%s, Treatment("%s"))' % (x[0], x[1]), zip(cat_vars, cat_var_treatment_vals)))) var_str_list = list( filter(lambda x: x != '', [scalar_var_str, cat_var_str])) independent_var_str = ' + '.join(var_str_list) formula = f'{dep_var} ~ {independent_var_str}' # print(formula) model = Logit.from_formula(formula, data) return model.exog, model.endog