python按比例随机切分数据的实现


Posted in Python onJuly 11, 2019

在机器学习或者深度学习中,我们常常碰到一个问题是数据集的切分。比如在一个比赛中,举办方给我们的只是一个带标注的训练集和不带标注的测试集。其中训练集是用于训练,而测试集用于已训练模型上跑出一个结果,然后提交,然后举办方验证结果给出一个分数。但是我们在训练过程中,可能会出现过拟合等问题,会面临着算法和模型的选择,此时,验证集就显得很重要。通常,如果数据量充足,我们会从训练集中划分出一定比例的数据来作为验证集。

每次划分数据集都手动写一个脚本,重复性太高,因此将此简单的脚本放到自己的博客。代码如下:

import random

def split(full_list,shuffle=False,ratio=0.2):
  n_total = len(full_list)
  offset = int(n_total * ratio)
  if n_total==0 or offset<1:
    return [],full_list
  if shuffle:
    random.shuffle(full_list)
  sublist_1 = full_list[:offset]
  sublist_2 = full_list[offset:]
  return sublist_1,sublist_2


if __name__ == "__main__":
  li = range(5)
  sublist_1,sublist_2 = split(li,shuffle=True,ratio=0.2)

  print sublist_1,len(sublist_1)
  print sublist_2,len(sublist_2)

其中,main为测试代码。假如训练集给出的是一个文件,我们先将文件读到列表中,然后再调用split。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
从零学python系列之新版本导入httplib模块报ImportError解决方案
May 23 Python
实例讲解python函数式编程
Jun 09 Python
Python生成器(Generator)详解
Apr 13 Python
Python中基础的socket编程实战攻略
Jun 01 Python
Unicode和Python的中文处理
Mar 19 Python
Python 隐藏输入密码时屏幕回显的实例
Feb 19 Python
pandas dataframe的合并实现(append, merge, concat)
Jun 24 Python
Python列表删除元素del、pop()和remove()的区别小结
Sep 11 Python
用python实现英文字母和相应序数转换的方法
Sep 18 Python
python线程安全及多进程多线程实现方法详解
Sep 27 Python
关于Tensorflow 模型持久化详解
Feb 12 Python
django 多数据库及分库实现方式
Apr 01 Python
Kali Linux安装ipython2 和 ipython3的方法
Jul 11 #Python
Python循环结构的应用场景详解
Jul 11 #Python
python列表,字典,元组简单用法示例
Jul 11 #Python
python实现数据分析与建模
Jul 11 #Python
新手如何发布Python项目开源包过程详解
Jul 11 #Python
让Python脚本暂停执行的几种方法(小结)
Jul 11 #Python
python在openstreetmap地图上绘制路线图的实现
Jul 11 #Python
You might like
黑夜路人出的几道php笔试题
2009/08/04 PHP
详解php的魔术方法__get()和__set()使用介绍
2012/09/19 PHP
学习PHP Cookie处理函数
2016/08/09 PHP
JTrackBar水平拖动效果
2007/07/15 Javascript
基于jquery的一个OutlookBar类,动态创建导航条
2010/11/19 Javascript
javascript实现的HashMap类代码
2014/06/27 Javascript
javascript数组操作方法小结和3个属性详细介绍
2014/07/05 Javascript
jQuery Validate初步体验(一)
2015/12/12 Javascript
Bootstrap中datetimepicker使用小结
2016/12/28 Javascript
js 性能优化之算法和流程控制
2017/02/15 Javascript
nodejs简单读写excel内容的方法示例
2018/03/16 NodeJs
关于vue中 $emit的用法详解
2018/04/12 Javascript
vue-quill-editor+plupload富文本编辑器实例详解
2018/10/19 Javascript
利用d3.js制作连线动画图与编辑器的方法实例
2019/09/05 Javascript
Vue-cli打包后如何本地查看的操作
2020/09/02 Javascript
JS实现小米轮播图
2020/09/21 Javascript
[02:41]《西雅图我们来了》2015国际邀请赛出征全记录
2015/07/23 DOTA
[49:35]LGD vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
在VS Code上搭建Python开发环境的方法
2018/04/06 Python
对Python的多进程锁的使用方法详解
2019/02/18 Python
python实现的汉诺塔算法示例
2019/10/23 Python
python golang中grpc 使用示例代码详解
2020/06/03 Python
python 爬虫请求模块requests详解
2020/12/04 Python
CSS3 制作绽放的莲花采用效果叠加实现
2013/01/31 HTML / CSS
JD Sports荷兰:英国领先的运动时尚零售商
2020/03/13 全球购物
解释下列WebService名词:WSDL、SOAP、UDDI
2012/06/22 面试题
如何做好总经理助理
2013/11/12 职场文书
医药学专业大学生职业生涯规划书论文
2014/01/21 职场文书
家长给孩子的评语
2014/01/30 职场文书
2014县委书记四风对照检查材料思想汇报
2014/09/21 职场文书
2014年医务科工作总结
2014/12/18 职场文书
汽车4S店前台接待岗位职责
2015/04/03 职场文书
2015年司机年终工作总结
2015/05/14 职场文书
2016三八妇女节慰问信
2015/11/30 职场文书
Java比较两个对象中全部属性值是否相等的方法
2021/08/07 Java/Android
ajax请求前端跨域问题原因及解决方案
2021/10/16 Javascript