Advertisement

机器学习:使用KNN和决策树来预测和评估乳腺癌load_breast_cancer

阅读量:
复制代码
 import numpy as np

    
 import pandas as pd
    
 from sklearn.preprocessing import StandardScaler,MinMaxScaler
    
 from sklearn.datasets import load_breast_cancer
    
 from sklearn.ensemble import RandomForestClassifier
    
 from sklearn.model_selection import train_test_split
    
 from sklearn.metrics import classification_report
    
 cancer=load_breast_cancer()
    
 x=cancer.data
    
 y=cancer.target
    
 x_train,x_test,y_train,y_test=train_test_split(x, y, random_state=10,test_size=0.2)
    
 std=StandardScaler()
    
 x_train=std.fit_transform(x_train)
    
 x_test=std.transform(x_test)
    
 #构建KNN模型和预测
    
 from sklearn.neighbors import KNeighborsClassifier
    
 model=KNeighborsClassifier()
    
 model.fit(x_train,y_train)
    
 #KNN模型评估
    
 from sklearn.metrics import classification_report
    
 print("训练集的模型评估指标:",model.score(x_train, y_train))
    
 y_train_predict = model.predict(x_train)
    
 model_report1 = classification_report(y_train, y_train_predict)
    
 print(model_report1)
    
 print("测试集的模型评估指标:",model.score(x_test, y_test))
    
 y_predict = model.predict(x_test)
    
 model_report = classification_report(y_test, y_predict)
    
 print(model_report)
    
  
    
  
    
 from sklearn import tree# 导入决策树包
    
 # 进行数据集分割
    
 print("x_train.shape:", x_train.shape)
    
 print("y_train.shape:", y_train.shape)
    
 print("x_test.shape:", x_test.shape)
    
 print("y_test.shape:", y_test.shape)
    
 clf = tree.DecisionTreeClassifier() #加载决策树模型
    
 ## 训练决策树模型
    
 clf.fit(x_train, y_train)
    
 ## 模型预测
    
 predictions = clf.predict(x_test)
    
 ## 模型评估
    
 from sklearn.metrics import accuracy_score # 导入准确率评价指标
    
 print('精准预测评估:%s'% accuracy_score(y_test, predictions))
    
    
    
    

需要安装的包:

安装numpy模块:pip install numpy -i Simple Index

安装pandas模块:pip install pandas -i Simple Index

安装机器学习模块:

pip install scikit_learn -i Simple Index

全部评论 (0)

还没有任何评论哟~