(一)利用sklearn中SVM分类器,对给定乳腺癌数据集进行二分类,并进行分类器评估。
利用load_breast_cancer( )下载数据集。
[1]对数据集做适当的预处理操作(数据清洗,标准化);
[2]划分 20%的数据集作为测试数据;
[3]输出支持向量;
[4]输出混淆矩阵,计算accuracy、recall和 F1-score,并绘制 ROC 曲线.
# 除去弱警告
import warnings
warnings.filterwarnings("ignore")
# 导入所需的库
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.datasets import load_breast_cancer
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import confusion_matrix, accuracy_score, recall_score, f1_score, roc_curve, auc
# 下载乳腺癌数据集
data = load_breast_cancer()
X = data.data # 特征矩阵
y = data.target # 目标向量
# 数据清洗,检查是否有缺失值或异常值
print(X.shape) # (569, 30)
print(y.shape) # (569,)
print(np.unique(y)) # [0 1]
print(np.isnan(X).any()) # Fal