乳腺肿瘤预测

  • 案例:良/恶性乳腺肿瘤预测
    • 1.1 简介
    • 1.2 代码
      • 1.2.1 导入数据集
      • 1.2.2 浏览数据的基本信息
      • 1.2.3 查看数据的基本统计信息
      • 1.2.4 统计数据属性中的缺失值
      • 1.2.5 将数据集划分为训练集和测试集
      • 1.2.6 标准化数据
      • 1.2.7 分别用LogisticRegression与SGDClassifier构建分类器
      • 1.2.8 分析LR分类器性能
      • 1.2.9 SGD分类器性能分析

案例:良/恶性乳腺肿瘤预测

1.1 简介

  本案例使用逻辑回归分类器对乳腺肿瘤进行良性/恶性预测,并对预测模型进行指标测算与评价。

  这里数据集采用乳腺癌数据集,原始的数据集下载地址为:https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/breast-cancer-wisconsin.data。

  数据特征如下:

1.2 代码

  将每个属性的特征量化为1~10的数值进行表示。首先,导入数据并显示前5条数据。

1.2.1 导入数据集

import pandas as pd
import numpy as np
column_names=['number','Cl_Thickness','Unif_cell_size','Unif_cell_shape','Marg_Adhesion','Sing_epith_cell_size','Bare_nuclei','Bland_chromation','Norm_nuclei','Mitoses','Class']
data=pd.read_csv('breast-cancer-wisconsin.data',names=column_names)
display(data.head())

1.2.2 浏览数据的基本信息

data.info()

1.2.3 查看数据的基本统计信息

data.describe()

1.2.4 统计数据属性中的缺失值

data.isnull().sum()

  如果存在缺失数据,需要丢弃或填充。该数据集中并没有缺失值。这里我们采取删除缺失值的方法

data=data.replace(to_replace='?',value=np.nan)
data=data.dropna(how='any')
print(data.shape)

1.2.5 将数据集划分为训练集和测试集

from sklearn.model_selection import train_test_split
# 划分训练集与测试集
X_train,X_test,y_train,y_test=train_test_split(data[column_names[1:10]],data[column_names[10]],test_size=0.25,random_state=33)
print('训练样本的数量和类别分布:\n',y_train.value_counts())

1.2.6 标准化数据

  每个维度的特征数据方差为1,均值为0,使得预测结果不会被某些维度过大的特征值主导。

from sklearn.preprocessing import StandardScaler
ss=StandardScaler()
X_train=ss.fit_transform(X_train)
X_test=ss.transform(X_test)
print(X_train.mean())

1.2.7 分别用LogisticRegression与SGDClassifier构建分类器

from sklearn.linear_model import LogisticRegression
from sklearn.linear_model import SGDClassifier
lr=LogisticRegression()
sgdc=SGDClassifier()
lr.fit(X_train,y_train)
lr_y_predict=lr.predict(X_test)
sgdc.fit(X_train,y_train)
sgdc_y_predict=sgdc.predict(X_test)

1.2.8 分析LR分类器性能

from sklearn.metrics import classification_report
print('Accuracy of LR Classifier:',lr.score(X_test,y_test))
print(classification_report(y_test,lr_y_predict,target_names=['Benign','Malignant']))

1.2.9 SGD分类器性能分析

print('Accuracy of SGD Classifier:',sgdc.score(X_test,y_test))
print(classification_report(y_test,sgdc_y_predict,target_names=['Benign','Malignant']))
# print(classification_report(y_test,sgdc_y_predict))

precision 精确率

recall 召回率

f1_score F1值

macro avg 宏观平均值

weighted avg 加权平均值

良/恶性乳腺肿瘤预测(逻辑回归分类器)相关推荐

  1. sklearn逻辑回归案例分析 《良/恶性乳腺癌肿瘤预测》

    由于对逻辑回归等算法做到深刻理解有点难,目前还在学习中,尽管有现成的模型库,我们还是需要对模型的底层实现有一个了解.这里先记录一下如何利用sklearn的LogisticRegression来做一个简 ...

  2. 【机器学习】:sklearn逻辑回归案例分析 《良/恶性乳腺癌肿瘤预测》

    由于对逻辑回归等算法做到深刻理解有点难,目前还在学习中,尽管有现成的模型库,我们还是需要对模型的底层实现有一个了解.这里先记录一下如何利用sklearn的LogisticRegression来做一个简 ...

  3. 《Python machine learning and practice》—— 良\恶性乳腺癌肿瘤预测

    数据集 良\恶性乳腺癌肿瘤预测数据集 代码分析 第三方库文件 from sklearn.linear_model import LogisticRegression #导入sklearn中的逻辑斯蒂回 ...

  4. 《python机器学习及实战》学习笔记ch1之良/恶性乳腺癌肿瘤预测

    1.文章说明 本系列文章都是自己学习<python机器学习及实战>这本书时所做的一些笔记而已,仅为学习作参考. 2.数据集地址: 数据地址是书中给出的数据下载地址: https://pan ...

  5. 【Kaggle笔记】良/恶性乳腺肿瘤数据(线性分类)

    系统环境 win10 Anaconda3 数据集 良/恶性乳腺肿瘤数据集 代码 # -*- coding: utf-8 -*- """ 良/恶性乳腺肿瘤数据线性分类模型对 ...

  6. 一个经典机器学习案例——良/恶性乳腺癌肿瘤预测

    良/恶性乳腺癌肿瘤预测 良/恶性乳腺癌肿瘤预测问题是一个十分经典的机器学习问题,简单来说我们需要利用肿块厚度和细胞尺寸这两个特征来判断肿瘤的类型(良性或者是恶性).数据的下载网站如下:http://n ...

  7. 《Python机器学习及实践:从零开始通往Kaggle竞赛之路》第1章 简介篇 学习笔记(三)“良/恶性乳腺癌肿瘤预测”总结

    目录 "良/恶性乳腺癌肿瘤预测" 1.机器学习的三个关键术语 (1)任务 (2)经验 (3)性能 2.机器学习的学习过程 (1)观察测试集数据分布 (2)初始化二类分类器 (3)训 ...

  8. 良/恶性乳腺癌肿瘤预测

    1. Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数: itertools.count():会创建一个无限的迭代器,只能按Ctrl+C退出 itertools.cycl ...

  9. One_良恶性乳腺癌肿瘤预测

    Author:龙箬 Data Science and Big Data Technology Change the world with data! CSDN@weixin_43975035 每朵云都 ...

最新文章

  1. Ubuntu 14.04上使用CMake编译MXNet源码操作步骤(C++)
  2. Kali Linux攻防系统(一:攻防系统Kali Linux下载安装与更新)
  3. 国外AI教学网红网站
  4. 超声射频信号的产生(RF Signal)
  5. C语言学习之通过指针变量输出整型数组a的10个元素
  6. CNN结构:序列预测复合DNN结构-AcGANs、 ENN误差编码网络
  7. 病毒行为分析初探(三)
  8. UVA11968 In The Airport【最值】
  9. centos下ftp服务器搭建
  10. Neural Entity Linking综述【详细版】
  11. 推荐几款常用的日志分析利器
  12. mysql查询当前月份前两个月的数据_sql查询指定月份之前的几个月
  13. 优动漫PAINT安装教程
  14. 《非常网管:网络管理从入门到精通(修订版)》一1.1 计算机网络基础
  15. 2023中国余热回收利用展览会盛装亮相北京
  16. CSS实现div竖向排版
  17. Linux系统忘记密码解决办法
  18. 职业梦想是计算机的英语作文,有关职业梦想的英语作文(精选7篇)
  19. oracle数据库的字段怎么排序规则,Oracle中文、数字混杂字段的排序
  20. 编写代码的「八荣八耻」

热门文章

  1. 达内C++全套21天课程
  2. 文件夹加密超级大师的金钻加密和闪电加密有什么区别?
  3. practice是什么意思_practice 是什么意思_practice 的翻译_音标_读音_用法_例句_爱词霸在线词典...
  4. Tailwind CSS 浅析
  5. 设计模式:行为型-模板模式
  6. 私有云、公共云、混合云
  7. 史蒂夫·乔布斯(美国苹果公司联合创始人)
  8. 中国物流园区潜力评估及十四五战略研究报告2022-2028年
  9. Java中 for(int i:index)什么意思!
  10. 农地里怒放的生命:常锋植保无人机