# -*- coding: utf-8 -*-
"""
Created on Fri Sep 29 11:05:52 2017
机器学习之sklearn
@author: den
"""
# 导入数据集
from sklearn import datasets
# 进行交叉验证
from sklearn.cross_validation import train_test_split
# 导入标准化尺度
from sklearn.preprocessing import StandardScaler
# 导入感知机算法
from sklearn.linear_model import Perceptron
# 计算分类的准确率
from sklearn.metrics import accuracy_score # 加载数据
iris = datasets.load_iris()
# 样本的后两位特征
X = iris.data[:,[2,3]]
# 目标类别
y = iris.target
# 获取30%的测试集,70%的训练集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
# 标准化操作,训练集和测试集使用相同的标准化
sc = StandardScaler()
# 估算每个特征的平均值和标准差
sc.fit(X_train)
# 使用同样的均值和标准差归一化训练集和测试集
sc.transform(X_train)
sc.transform(X_test) # 获得ppn对象
ppn = Perceptron(n_iter=40, eta0=0.5)
# 拟合
ppn.fit(X_train, y_train)
# 预测
y_pred = ppn.predict(X_test)
# 打印错分率
print ('错分样本的个数为:%d' % (y_test != y_pred).sum())
# 计算准确率
print ('模型的准确率为:%.2f' % accuracy_score(y_test, y_pred))

sklearn学习_01的更多相关文章

  1. C++基础学习_01

    C++基础学习_01 基础知识:1.命名空间,2.IO流(输入输入),3.参数缺省,4.函数重载 1.命名空间 作用:对标识符的名称进行本地化,避免命名冲突 定义:namaspace space_na ...

  2. sklearn学习笔记之简单线性回归

    简单线性回归 线性回归是数据挖掘中的基础算法之一,从某种意义上来说,在学习函数的时候已经开始接触线性回归了,只不过那时候并没有涉及到误差项.线性回归的思想其实就是解一组方程,得到回归函数,不过在出现误 ...

  3. sklearn学习总结(超全面)

    https://blog.csdn.net/fuqiuai/article/details/79495865 前言sklearn想必不用我多介绍了,一句话,她是机器学习领域中最知名的python模块之 ...

  4. sklearn学习 第一篇:knn分类

    K临近分类是一种监督式的分类方法,首先根据已标记的数据对模型进行训练,然后根据模型对新的数据点进行预测,预测新数据点的标签(label),也就是该数据所属的分类. 一,kNN算法的逻辑 kNN算法的核 ...

  5. sklearn 学习 第一篇:分类

    分类属于监督学习算法,是指根据已有的数据和标签(分类)进行学习,预测未知数据的标签.分类问题的目标是预测数据的类别标签(class label),可以把分类问题划分为二分类和多分类问题.二分类是指在两 ...

  6. SKlearn | 学习总结

    1 简介 scikit-learn,又写作sklearn,是一个开源的基于python语言的机器学习工具包.它通过NumPy, SciPy和Matplotlib等python数值计算的库实现高效的算法 ...

  7. sklearn学习笔记3

    Explaining Titanic hypothesis with decision trees decision trees are very simple yet powerful superv ...

  8. sklearn学习笔记2

    Text classifcation with Naïve Bayes In this section we will try to classify newsgroup messages using ...

  9. sklearn学习笔记1

    Image recognition with Support Vector Machines #our dataset is provided within scikit-learn #let's s ...

随机推荐

  1. Eclipse------maven使用Maven build编译web项目显示" javax.servlet.http 不存在"

    缺少javax.servlet包 解决方法: 引入下面代码即可 <project> <dependencies> <dependency> <groupId& ...

  2. 8 -- 深入使用Spring -- 2...4 使用@PostConstruct和@PreDestroy定制生命周期行为

    8.2.4 使用@PostConstruct和@PreDestroy定制生命周期行为 @PostConstruct 和 @PreDestroy 同样位于javax.annotation 包下,也是来自 ...

  3. vue实现百度搜索下拉提示功能

    这段代码用到vuejs和vue-resouece.实现对接智能提示接口,并通过上下键选择提示项,按enter进行搜索 <!DOCTYPE html> <html lang=" ...

  4. Spring getBean 首字母大小写问题

    如果类第一个字母大写第二个小写,那么首字母小写获取bean 如果第一个和第二个字母都是大写的,那个获取bean首字母要大写

  5. Data Guard 主备库角色转换

    1. switchover操作 1.1 备库先关闭实时日志应用 standby>alter database recover managed standby database cancel; 1 ...

  6. ZooKeeper 未授权访问漏洞

    ZooKeeper 安装: Zookeeper的默认开放端口是2181 wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zooke ...

  7. osgEarth设置模型旋转角度

    #include<windows.h> #include <osgViewer/Viewer> #include <osgEarthDrivers/gdal/GDALOp ...

  8. Git服务器的搭建和使用

    一.GIT服务器的搭建 1. 安装Git yum -y install git 2. 创建git用户 adduser git 3. 创建证书登陆   收集所有客户端需要登录的用户的公钥,就是他们自己的 ...

  9. Kafka配置SSL(云环境)

    本文结合一个具体的实例给出如何在公有云环境上配置Kafka broker与client之间的SSL设置. 测试环境 阿里云机一台(Server端):主机名是kafka1,负责运行单节点的Kafka集群 ...

  10. WebForm的初步认识

    嘿嘿,这里就简单的总结一下初步学习webform以及对他的认识,其实大家都认为webform很讨厌,因为好多都是给我们封装好的,而且现在好多的公司已经慢慢的从中逃离出来选择使用mvc架构,甚至好多的项 ...