函数原型:

sklearn.model_selection.train_test_split(train_data,train_target,test_size=0.4,

random_state=0,stratify=y_train)

函数功能:

将原始数据按照比例分割为“测试集”和“训练集”。返回四个数组。

参数说明:

train_data:要划分的样本集。

train_target:要划分的样本标签集。

test_size:测试集所占的比例大小。

random_state:随机数种子。

随机数种子:其实就是该组随机数的编号,在需要重复试验的时候,保证得到一组一样的随机数。比如你每次都填1,其他参数一样的情况下你得到的随机数组是一样的。但填0或不填,每次都会不一样。

stratify:是为了保持split前类的分布。

比如有100个数据,80个属于A类,20个属于B类。如果train_test_split(... test_size=0.25, stratify = y_all), 那么split之后数据如下: 
training: 75个数据,其中60个属于A类,15个属于B类。 
testing: 25个数据,其中20个属于A类,5个属于B类。

再如----stratify =train_target  : 依据标签y,按原数据y中各类比例,分配给train和test,使得train和test中各类数据的比例与原数据集一样。

函数的返回值有四个值:

X_train:训练特征集

X_test:训练标签集

y_train:测试特征集

y_test:测试标签集

eg:

import numpy as np
from sklearn.model_selection import train_test_split
X=np.arange(10)
y=[0,1,1,0,1,1,1,1,0,0,]
##划分训练集占比0.8,训练集占比0.2  随机数种子为0
X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=0.2, random_state=0)
print("X=",X)
print("X_train=",X_train)
print("X_test=",X_test)
print("y_train=",y_train)
print("y_test=",y_test)result:
X= [0 1 2 3 4 5 6 7 8 9]
X_train= [4 9 1 6 7 3 0 5]
X_test= [2 8]
y_train= [1, 0, 1, 1, 1, 0, 0, 1]
y_test= [1, 0]

建议收藏,以便下次查阅方便

Scikit-learn——train_test_split()方法的功能和使用相关推荐

  1. scikit learn train_test_split的使用

    最近使用train_test_split,发现是一个高频的api,我分享一下我的代码,首先安装scikit-learn: pip install scikit-learn 然后输入下面的代码: imp ...

  2. 【scikit-learn】如何用Python和SciKit Learn 0.18实现神经网络

    本教程的代码和数据来自于 Springboard 的博客教程.本文的作者为 Jose Portilla,他是网络教育平台 Udemy 一门数据科学类课程的讲师. GitHub 链接:https://g ...

  3. Scikit Learn: 在python中机器学习

    Warning 警告:有些没能理解的句子,我以自己的理解意译. 翻译自:Scikit Learn:Machine Learning in Python 作者: Fabian Pedregosa, Ga ...

  4. [转载]Scikit Learn: 在python中机器学习

    原址:http://my.oschina.net/u/175377/blog/84420 目录[-] Scikit Learn: 在python中机器学习 载入示例数据 一个改变数据集大小的示例:数码 ...

  5. 机器学习与Scikit Learn学习库

    摘要: 本文介绍机器学习相关的学习库Scikit Learn,包含其安装及具体识别手写体数字案例,适合机器学习初学者入门Scikit Learn. 在我科研的时候,机器学习(ML)是计算机科学领域中最 ...

  6. python笔迹识别_python_基于Scikit learn库中KNN,SVM算法的笔迹识别

    之前我们用自己写KNN算法[网址]识别了MNIST手写识别数据 [数据下载地址] 这里介绍,如何运用Scikit learn库中的KNN,SVM算法进行笔迹识别. 数据说明: 数据共有785列,第一列 ...

  7. scikit - learn 做文本分类

    文章来源: https://my.oschina.net/u/175377/blog/84420 Scikit Learn: 在python中机器学习 Warning 警告:有些没能理解的句子,我以自 ...

  8. fun是什么意思 python中def_【python】 numpy中的矩阵转置(ndarray.T)为什么不加括号却可以实现方法的功能...

    [python] numpy中的矩阵转置(ndarray.T)为什么不加括号却可以实现方法的功能 经过搜索和查询源码了解到,.T就是一个方法,但是是被装饰器修饰了一下... @property是pyt ...

  9. 松下服务器编码器由谁该信号,松下伺服电机编码器判断好坏的方法以及功能和作用...

    原标题:松下伺服电机编码器判断好坏的方法以及功能和作用 1.松下伺服电机编码器的工作原理它是一种将旋转位移转换成一串数字脉冲信号的旋转式传感器,这些脉冲能用来控制角位移,如果编码器与齿轮条或螺旋丝杠结 ...

  10. isAssignableFrom方法的功能简介说明

    转发: isAssignableFrom方法具有什么功能呢? 下文笔者讲述isAssignableFrom()方法的功能简介说明 isAssignableFrom()方法简介 isAssignable ...

最新文章

  1. HarmonyOS 查看本地API
  2. 线程八大核心+java并发核心知识体系精讲_Java从业者如果不懂这些,面试80%都会挂在这些核心知识上面...
  3. 基于Hi3516A的H265 IPC LIVE555 开发基本原理
  4. android xml反编译原理,记一次resources.arsc文件hex修改原理分析
  5. Shiro框架中有三个核心概念:Subject ,SecurityManager和Realms。
  6. VS编译器常见的问题
  7. MySQL 误删数据恢复
  8. win7c盘空间越来越小_C盘空间越来越小怎么办,5个步骤无损扩容1招就搞定
  9. 笔记73-应用容器Docker
  10. Kalman实际应用总结
  11. 1.3(1) 框架——内嵌框架
  12. Linux日常运维1 w vmstat top sar nload io free ps tcpdump
  13. oracle分页排序查询,Oracle分页查询中排序与效率问题
  14. 童年记忆中的零食商品
  15. 顺序表创建和就地逆置
  16. 使用libphonenumber格式化手机号以及归属地查询
  17. 微信小程序----学生信息注册篇
  18. 梯度下降法中为什么梯度的反方向是函数下降最快的方向?
  19. 【东大自控笔记3】梅逊增益公式
  20. PADS,ADOBE,CAD工具栏重置(复位)

热门文章

  1. 简单实现几种常见的前端效果,附代码!
  2. 初识python教案青岛版八年级_青岛版信息技术六上第二单元第8课8.初识python教案...
  3. 基础知识:IDE集成开发环境(pycharm)、基本数据类型、用户的交互、运算符
  4. 7.Android的学习(活动的生命周期以及小例子)
  5. 给书配代码-电力经济调度(3):计及网络安全约束的经济调度模型
  6. python太阳花绘制
  7. OpenCASCADE绘制测试线束:布尔运算命令之设置选项的操作
  8. 使用 Boost.Multiprecision 来实现高精度高斯-拉盖尔正交积分
  9. boost::multi_array模块实现打印数组相关的测试程序
  10. boost::gil模块计算直方图的测试程序