python数据预测案例_Python数据分析及可视化实例之疾病预测(分类)
Talk is cheap , show U the code.
该源码注释比较全面,需要对SKlearn有一定的了解,
当然,你也可以把它视作黑箱,做个调包侠也是大侠,
没错,本主用Bokeh进行可视化:
# coding: utf-8
# In[1]:
# 导入pandas与numpy工具包。
import pandas as pd
import numpy as np
# 创建特征列表。
# column_names = ['样本编号', '肿块厚度', '细胞大小均一性', '细胞形态均一性', '边际黏连', '单个细胞到校', '裸核', '染色体', '正常核', '有丝分裂', '分类']
column_names = ['Sample code number', 'Clump Thickness', 'Uniformity of Cell Size', 'Uniformity of Cell Shape', 'Marginal Adhesion', 'Single Epithelial Cell Size', 'Bare Nuclei', 'Bland Chromatin', 'Normal Nucleoli', 'Mitoses', 'Class']
# 使用pandas.read_csv函数从互联网读取指定数据。
data = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/breast-cancer-wisconsin.data', names = column_names )
# 将?替换为标准缺失值表示。
data = data.replace(to_replace='?', value=np.nan)
# 丢弃带有缺失值的数据(只要有一个维度有缺失)。
data = data.dropna(how='any')
# 输出data的数据量和维度。
data.shape
# In[2]:
from bokeh.charts import Scatter, show, output_notebook # 采用chart的高级绘图
output_notebook()
# In[3]:
scatter = Scatter(
data, x='Clump Thickness', y='Uniformity of Cell Size',
xlabel='厚度', ylabel='大小', title="肿瘤性质与厚度、大小关系",legend='top_left',
color='Class', outline_line_alpha = 0.02, border_fill_alpha=0.02, plot_height=500, plot_width=500)
# 直接通过class分类(聚类)定义不同散点的color
show(scatter)
# In[4]:
# 使用sklearn.cross_valiation里的train_test_split模块用于分割数据。
# from sklearn.cross_validation import train_test_split
from sklearn.model_selection import train_test_split
# 随机采样25%的数据用于测试,剩下的75%用于构建训练集合。
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)
# In[5]:
# 查验训练样本的数量和类别分布。
y_train.value_counts()
# In[6]:
# 查验测试样本的数量和类别分布。
y_test.value_counts()
# In[7]:
# 从sklearn.preprocessing里导入StandardScaler。
from sklearn.preprocessing import StandardScaler
# 从sklearn.linear_model里导入LogisticRegression与SGDClassifier。
from sklearn.linear_model import LogisticRegression # 逻辑回归
from sklearn.linear_model import SGDClassifier # 随机参数估计
# 标准化数据,保证每个维度的特征数据方差为1,均值为0。使得预测结果不会被某些维度过大的特征值而主导。
ss = StandardScaler()
X_train = ss.fit_transform(X_train)
X_test = ss.transform(X_test)
# In[8]:
# 初始化LogisticRegression与SGDClassifier。
lr = LogisticRegression()
sgdc = SGDClassifier()
# 调用LogisticRegression中的fit函数/模块用来训练模型参数。
lr.fit(X_train, y_train)
# 使用训练好的模型lr对X_test进行预测,结果储存在变量lr_y_predict中。
lr_y_predict = lr.predict(X_test)
# 调用SGDClassifier中的fit函数/模块用来训练模型参数。
sgdc.fit(X_train, y_train)
# 使用训练好的模型sgdc对X_test进行预测,结果储存在变量sgdc_y_predict中。
sgdc_y_predict = sgdc.predict(X_test)
# In[9]:
# 从sklearn.metrics里导入classification_report模块。
from sklearn.metrics import classification_report
# 使用逻辑斯蒂回归模型自带的评分函数score获得模型在测试集上的准确性结果。
print ('Accuracy of LR Classifier:', lr.score(X_test, y_test))
print ('Accuracy of LR Classifier:', lr.score(X_test, y_test))
# 利用classification_report模块获得LogisticRegression其他三个指标的结果。
print (classification_report(y_test, lr_y_predict, target_names=['Benign', 'Malignant']))
# In[10]:
# 使用随机梯度下降模型自带的评分函数score获得模型在测试集上的准确性结果。
print('Accuarcy of SGD Classifier:', sgdc.score(X_test, y_test))
# 利用classification_report模块获得SGDClassifier其他三个指标的结果。
print(classification_report(y_test, sgdc_y_predict, target_names=['Benign', 'Malignant']))
# #### 交叉验证线性回归分类器的准确率
# In[11]:
from sklearn import cross_validation
from sklearn.cross_validation import KFold
# In[12]:
alg = LogisticRegression(random_state=1)
scores = cross_validation.cross_val_score(alg, X_train, y_train, cv=3)
print(scores.mean()) # 分类器的准确率
新手可查阅历史目录:yeayee:Python数据分析及可视化实例目录zhuanlan.zhihu.com
python数据预测案例_Python数据分析及可视化实例之疾病预测(分类)相关推荐
- python分析数据走势_Python数据分析及可视化实例之个股走势预测(26)
1.项目背景: 仅仅用来练手,个股走势如果真预测准确了,都就改行当操盘手了,哈哈! 但话又说回来,如果把数据曲线特征提取出来,再进行对比异常判断,也是可以的. 数据源,请关注微信公众号:海豹战队,回复 ...
- python信用卡违约预测分析_Python数据分析及可视化实例之银行信用卡违约预测(24)...
1.项目背景: 银行体系对于信用可违约进行预测,原始数据集如下: 2.分析步骤: (1)数据清洗(Data Cleaning) (2) 探索性可视化(Exploratory Visualization ...
- jupyter 数据分析可视化案例_Python数据分析及可视化实例之Anaconda、Jupyter简介
系列文章总目录:Python数据分析及可视化实例目录 简介部分依然是搬运工的活, 尽可能搬点有用的少占地方. 1.Anaconda 在win平台下用Anaconda再好不过了, 基本上继承了所有数据分 ...
- python房价数据挖掘_Python数据分析及可视化实例之帝都房价预测
数据集下载易一网络科技 - 付费文章www.intumu.com 加载数据 import pandas as pd df=pd.read_csv("MYUNOI.csv") # ...
- python从mongodb里取出数据进行可视化_Python数据分析及可视化实例之MongoDB增删改查...
1.MongoDB安装 有时候度娘还是给力的,相反一些博客的安装方法则显得凌乱: 最初使用Win7安装经常会出现意料不到的错误, 比如开机启动服务,服务器日志等. 上面链接安装步骤简单,没有炫技的成分 ...
- python数据分析可视化实例_Python数据分析及可视化实例之基于Kmean分析RFM进行用户关怀...
系列文章总目录:Python数据分析及可视化实例目录 数据集下载 Python数据分析及可视化实例之全国各城市房价分析(含数据采集) Python数据分析及可视化实例之帝都房价预测 Python数据分 ...
- python数据分析实例_Python数据分析及可视化实例之爬虫源码(05)
1.背景介绍 (1)在注册了某网站之后,发现站内个人页面有个关于京杭大运河的征文.再加上之前,九寨沟地震第一时间机器人写了一篇通讯稿.于是我就在想,既然机器可以写通讯稿,那么是不是也可以用来写篇关于京 ...
- mongodb 3.4 安装_Python数据分析及可视化实例之CentOS7.2+MongoDB V3.4 安装
系列文章总目录:Python数据分析及可视化实例目录 我不是程序员,也不是设计师,我只是碰巧有一些想法和一台电脑. I am not a designer nor a coder. I'm just ...
- python数据分享人力资源_Python数据分析帮你清晰的了解整理员工们的工作效率和整体满意度...
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 项目背景 2018年,被称为互联网的寒冬之年.无论大小公司,纷纷走上了裁员 ...
最新文章
- 现在企业会要求JAVA人员会怎样的技术呢?
- linux 时间戳 c语言,c语言中的时间戳和时间格式
- Eclipse使用SVN
- 【JavaScript】Window对象学习
- 9-n个人中选k个人的选择方法种类
- TGARS 2019: What, Where, and How to Transfer in SAR Target Recognition Based on Deep CNNs ——学习笔记
- 测试环境搭建流程_软件测试流程
- Quartz.net 定时调度CronTrigger时间配置格式说明
- PHP发微信消息必须开网吗,关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题...
- Video Matting:AI视频抠图
- 钓鱼网站制作 ---- Setoolkit 克隆web页面钓鱼
- 如何将PPT输出为高精度的图片
- 【安卓】3.修改列表增加下划线样式(保姆级图文+附示例)
- Eigen内存分配器aligned_allocator
- 超详细的MySQL基本操作
- Java 心心跳动,能把女朋友感动哭的效果
- 电视机未来会成为家庭交互中心?
- 网络安全课程设计Java实现DES加密算法(可视化界面)代码+设计文档
- java 缓存的简单实现
- C# FileSystemWatcher监控新生成的文件
热门文章
- pads中如何设置等长_标签打印软件中标签间距以及边距如何设置
- 从java中安装webolgc_Javaweb| 文件下载
- Controller接口控制器(6)
- Volley源码学习1--volley结构图
- java 抽象类和接口1--基本概念
- bottomTagFragment
- html5环形流程图,环状流程图怎么画好看?5分钟让你精通绘制技巧
- android多个activity共用一个菜单,Android开发之多个Activity跳转(Intent)及菜单用法(menu)...
- vmware 虚拟机设置 redhat 桥接模式
- POI API 创建Excel 文档