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读取csv文件示例(python操作csv)
Mar 11 Python
Python greenlet实现原理和使用示例
Sep 24 Python
简单介绍Python的Tornado框架中的协程异步实现原理
Apr 23 Python
详解Django通用视图中的函数包装
Jul 21 Python
Python中json格式数据的编码与解码方法详解
Jul 01 Python
Python自定义进程池实例分析【生产者、消费者模型问题】
Sep 19 Python
Python基于xlrd模块操作Excel的方法示例
Jun 21 Python
Python远程开发环境部署与调试过程图解
Dec 09 Python
Python要如何实现列表排序的几种方法
Feb 21 Python
python集合能干吗
Jul 19 Python
python如何在word中存储本地图片
Apr 07 Python
用Python selenium实现淘宝抢单机器人
Jun 18 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生成html分页列表的代码
2007/03/18 PHP
ThinkPHP连接数据库及主从数据库的设置教程
2014/08/22 PHP
smarty中js的调用方法示例
2014/10/27 PHP
Symfony2函数用法实例分析
2016/03/18 PHP
Phpstorm+Xdebug断点调试PHP的方法
2018/05/14 PHP
msn上的tab功能Firefox对childNodes处理的一个BUG
2008/01/21 Javascript
js 图片缩放(按比例)控制代码
2009/05/27 Javascript
关于IE、Firefox、Opera页面呈现异同 写脚本很痛苦
2009/08/28 Javascript
JS获取地址栏参数的小例子
2013/08/23 Javascript
为Javascript中的String对象添加去除左右空格的方法(示例代码)
2013/11/30 Javascript
JavaScript中双叹号(!!)作用示例介绍
2014/04/10 Javascript
jquery序列化表单以及回调函数的使用示例
2014/07/02 Javascript
javascript ajax的5种状态介绍
2014/08/18 Javascript
用原生js做个简单的滑动效果的回到顶部
2014/10/15 Javascript
javascript中日期函数new Date()的浏览器兼容性问题
2015/09/05 Javascript
BootStrap智能表单实战系列(三)分块表单配置详解
2016/06/13 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
2016/12/05 Javascript
js实现百度地图定位于地址逆解析,显示自己当前的地理位置
2016/12/08 Javascript
更改BootStrap popover的默认样式及popover简单用法
2018/09/13 Javascript
浅谈es6中的元编程
2020/12/01 Javascript
JavaScript实现滚动加载更多
2020/12/27 Javascript
使用python装饰器验证配置文件示例
2014/02/24 Python
利用Python脚本实现ping百度和google的方法
2017/01/24 Python
Flask-Mail用法实例分析
2018/07/21 Python
通过python实现弹窗广告拦截过程详解
2019/07/10 Python
python re.sub()替换正则的匹配内容方法
2019/07/22 Python
python实现翻转棋游戏(othello)
2019/07/29 Python
Python操作SQLite/MySQL/LMDB数据库的方法
2019/11/07 Python
Python中if有多个条件处理方法
2020/02/26 Python
TripAdvisor印尼站:全球领先的旅游网站
2018/03/15 全球购物
必须要使用游标的SQL语句有那些
2012/05/07 面试题
单位未婚证明范本
2014/01/18 职场文书
2015年社区党建工作汇报材料
2015/06/25 职场文书
2016年教师反腐倡廉心得体会
2016/01/13 职场文书
乡镇干部学习心得体会
2016/01/23 职场文书
详解MySQL中的主键与事务
2021/05/27 MySQL