函数名:train_test_split
所在包:sklearn.model_selection
功能:划分数据的训练集与测试集


参数解读:train_test_split (*arrays,test_size, train_size, rondom_state=None, shuffle=True, stratify=None)

#红色为常用

  • arrays:特征数据和标签数据(array,list,dataframe等类型),要求所有数据长度相同。
  • test_size / train_size: 测试集/训练集的大小,若输入小数表示比例,若输入整数表示数据个数。
  • rondom_state:随机种子(一个整数),其实就是一个划分标记,对于同一个数据集,如果- rondom_state相同,则划分结果也相同。
  • shuffle:是否打乱数据的顺序,再划分,默认True。
  • stratify:none或者array/series类型的数据,表示按这列进行分层采样。

#随机种子详解:

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

#stratify详解:

 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参数,training集和testing集的类的比例是 A:B= 4:1,等同于split前的比例(80:20)。通常在这种类分布不平衡的情况下会用到stratify。
将stratify=X就是按照X中的比例分配
将stratify=y就是按照y中的比例分配

举个例子

特征数据:dataa  b  c
0  1  2  3
1  1  3  6
2  2  3  8
3  1  5  7
4  2  4  8
5  2  3  6
6  1  4  8
7  2  3  6
标签数据:label
[2,3,5,6,8,0,2,3]#划分
xtrain,xtest,ytrain,ytest=train_test_split(data,label,test_size=0.2,stratify=data['a'],random_state=1)
训练特征集:a  b  c
0  1  2  3
2  2  3  8
3  1  5  7
5  2  3  6
6  1  4  8
4  2  4  8
测试特征集:a  b  c
1  1  3  6
7  2  3  6训练集与测试集按照a列来分层采样,且无论重复多少次上述语句,划分结果都相同。

机器学习python中train_test_split()函数进行数据集分割相关推荐

  1. 技术图文:举例详解Python中 split() 函数的使用方法

    背景 这篇文章主要介绍Python中的split()函数的使用方法,split()函数通常用于将字符串切片并转换为列表,需要的朋友可以参考一下. 技术分析 Python中有split()和os.pat ...

  2. python中format函数用法简书_从Python安装到语法基础,这才是初学者都能懂的爬虫教程...

    Python和PyCharm的安装:学会Python和PyCharm的安装方法 变量和字符串:学会使用变量和字符串的基本用法 函数与控制语句:学会Python循环.判断语句.循环语句和函数的使用 Py ...

  3. 讲讲Python中的函数传递问题 【文末送书】

    正式的Python专栏第25篇,同学站住,别错过这个从0开始的文章! 前篇讲了python中的函数和高阶函数,这篇再把函数的其他部分补充一下,稍微轻松简单一些. 文末评论送书,学委会用这个抽奖程序来进 ...

  4. python中split()函数讲解

    python中split()函数讲解 本文讲述的是string.split(s[, sep[, maxsplit]]),针对string类型的split()函数.它主要是切割字符串,结果返回由字符串元 ...

  5. 机器学习实战中的函数学习记录

    title: 机器学习实战中的函数学习记录 date: 2020-05-01 09:20:50 tags: [python函数] categories: 机器学习实战 更多内容请关注我的博客 记录机器 ...

  6. Python 中 pct_change 函数是一种非常实用的函数,它可以帮助我们计算一个时间序列的百分比变化率。在数据分析和金融领域中,我们经常需要计算某个指标...

    Python 中 pct_change 函数是一种非常实用的函数,它可以帮助我们计算一个时间序列的百分比变化率.在数据分析和金融领域中,我们经常需要计算某个指标相对于前一期的变化率,这时可以使用 pc ...

  7. python中、函数定义可以不包括以下一对圆括号_Python函数的基础学习

    一.函数分类 (1)内置函数.Python语言内置了若干常用的函数,例如abs().len()等等,在程序中可以直接使用. (2)标准库函数.Python语言安装程序同时会安装若干标准库,例如math ...

  8. python中pop函数_Python中的Pop函数

    python中pop函数 什么是弹出功能? (What is the pop function?) The method pop() removes and returns the last elem ...

  9. python中eval()函数的使用

    python中eval()函数的使用 python eval函数功能:将字符串str当成有效的表达式来求值并返回计算结果. 函数定义: eval(expression, globals=None, l ...

最新文章

  1. Web开发的机器学习框架
  2. Python中怎么读写图像
  3. wpf listbox绑定不跟新_你知道新媒体吗?好像跟想象的不太一样
  4. mysql教程丿it教程网_1.0MySQL基础入门【DQL部分】
  5. Netty工作笔记0001---Netty介绍
  6. 视觉平台搭建——光源选择
  7. 18.企业应用架构模式 --- 基本模式
  8. Android SVG矢量图形打造中国地图
  9. 三年建模师告诉你3DMAX有没有前途
  10. JDK版本切换——JDK1.1.1
  11. jQuery fadeIn淡入效果
  12. App推广及游戏推广,如何才能大规模起量
  13. Voxceleb2 视频数据集下载(国内链接)
  14. 在阿里云服务器中部署nodeBB项目(nodeBB系列一)
  15. 猿团项目实战-仿途牛旅行APP免费视频课程
  16. nyoj 1248-海岛争霸 //floyd变形
  17. NLP实践——VQA/Caption生成模型BLIP-2的应用介绍
  18. 【C语言】时间转换24小时制转12小时制
  19. 郭盛华:黑客破坏Okta的GitHub存储库,窃取源代码
  20. brew官网安装方法过慢的解决办法

热门文章

  1. 《计算机网络》第二章作业
  2. Oracle - 索引
  3. 简单易用的运动控制卡(十二):运动控制系统的安全设置
  4. 运算符优先级(总结)关于与的区别 ||与|的区别
  5. 如何输入多组数据并输出每组数据的和?
  6. 高通量测序中常见名词解释
  7. [Linux字符驱动] DIDO 74HC595实现遥控遥信功能
  8. Windows主机间批量操作的基本配置
  9. SimMatch 论文分享
  10. VBA入门到进阶常用知识代码总结40