}) rf_anova.fit(X_train_anova_p, y_train_p) rf_anova_raw_preds, rf_anova_preds, rf_anova_score = rf_anova.predict( X_test_anova_p, y_test_p) rf_anova_fig = Classifiers.metrics(y_test_p, rf_anova_raw_preds[:, 1], rf_anova_preds) ################################ ######## GLM ROC Curves ######## glm_total = Classifiers.LogisticRegressionModel(params={ 'penalty': 'l2', 'solver': 'lbfgs', 'max_iter': 200, 'C': 0.001, 'verbose': 0 }) glm_total.fit(X_train_p, y_train_p) glm_total_raw_preds, glm_total_preds, glm_total_score = glm_total.predict( X_test_p, y_test_p) glm_total_fig = Classifiers.metrics(y_test_p, glm_total_raw_preds[:, 1], glm_total_preds) glm_vt = Classifiers.LogisticRegressionModel(params={ 'penalty': 'l2', 'solver': 'lbfgs', 'max_iter': 200,
) rf_anova.fit(X_train_p, y_train_p) rf_anova_raw_preds, rf_anova_preds, rf_anova_score = rf_anova.predict( X_test_p, y_test_p ) auc_rf, pr_auc, fpr, tpr, roc_thresholds, recalls, precisions = get_auc_pr( y_test_p, rf_anova_raw_preds ) glm_anova = Classifiers.LogisticRegressionModel( params={ **best_params_glm, "penalty": "l2", "solver": "lbfgs", "max_iter": 200, # 'C' : 0.001, "verbose": 0, } ) glm_anova.fit(X_train_p, y_train_p) glm_anova_raw_preds, glm_anova_preds, glm_anova_score = glm_anova.predict( X_test_p, y_test_p ) auc_glm, pr_auc_glm, fpr_glm, tpr_glm, roc_thresholds_glm, recalls_glm, precisions_glm = get_auc_pr( y_test_p, glm_anova_raw_preds )
features_used = [i[1] for i in nznew] X_glm_train = X_train[features_used] X_glm_test = X_test[features_used] # Scale and normalize X_train_new = preprocessing.scale(X_glm_train) X_test_new = preprocessing.scale(X_glm_test) print("Shape of X data GLM fr: ", X_train_new.shape) # Use new features to train GLM model glm = Classifiers.LogisticRegressionModel(params={ "penalty": "l2", "solver": "lbfgs", "max_iter": 200, "C": 0.01, "verbose": 0, }) glm.fit(X_train_new, y_train_p) # Save model to disk filename = 'S:/Dehydration_stroke/Team Emerald/Working GitHub Directories/'\ 'Michael/stroke-hemodynamics/Aim 2/Models/FullModelResults/UpdatedResults/TEST24hr_model_glm.sav' pickle.dump(glm, open(filename, 'wb')) glm_raw_preds, glm_preds, glm_score = glm.predict(X_test_new, y_test_p) auc_glm, pr_auc_glm, fpr_glm, tpr_glm, roc_thresholds_glm, recalls_glm, precisions_glm = get_auc_pr( y_test_p, glm_raw_preds) recall_no_skill = y_train_p.sum() / len(y_train_p)