From ac4cac38b91706008d73be5c99831eb1a8450f15 Mon Sep 17 00:00:00 2001 From: QY-Wu <61172812+QY-Wu@users.noreply.github.com> Date: Mon, 18 May 2020 11:28:24 +0800 Subject: [PATCH] exercise_1 WQY you can find the exercise_1 in cancer.py --- cancer.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 cancer.py diff --git a/cancer.py b/cancer.py new file mode 100644 index 0000000..9f63069 --- /dev/null +++ b/cancer.py @@ -0,0 +1,30 @@ +from sklearn import datasets +from sklearn.model_selection import train_test_split +from sklearn.linear_model import LogisticRegression +from sklearn.metrics import f1_score as f1 +from sklearn.metrics import recall_score as recall +from sklearn.metrics import confusion_matrix as cm + +'''导入数据''' +X,y = datasets.load_breast_cancer(return_X_y=True) + +'''分割训练集与验证集''' +X_train,X_test,y_train,y_test = train_test_split(X,y,train_size=0.7,test_size=0.3) + +'''初始化逻辑回归分类器,这里对类别不平衡问题做了处理''' +cl = LogisticRegression(class_weight='balanced') + +'''利用训练数据进行逻辑回归分类器的训练''' +cl = cl.fit(X_train,y_train) + +'''打印训练的模型在验证集上的正确率''' +print('逻辑回归的测试准确率:'+str(cl.score(X_test,y_test))+'\n') + +'''打印f1得分''' +print('F1得分:'+str(f1(y_test,cl.predict(X_test)))+'\n') + +'''打印召回得分''' +print('召回得分(越接近1越好):'+str(recall(y_test,cl.predict(X_test)))+'\n') + +'''打印混淆矩阵''' +print('混淆矩阵:'+'\n'+str(cm(y_test,cl.predict(X_test)))+'\n') \ No newline at end of file