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 相关文章推荐
python3序列化与反序列化用法实例
May 26 Python
在Django框架中运行Python应用全攻略
Jul 17 Python
python脚本设置超时机制系统时间的方法
Feb 21 Python
详解常用查找数据结构及算法(Python实现)
Dec 09 Python
浅谈python可视化包Bokeh
Feb 07 Python
Python利用lxml模块爬取豆瓣读书排行榜的方法与分析
Apr 15 Python
django rest framework 实现用户登录认证详解
Jul 29 Python
PyQt5+Caffe+Opencv搭建人脸识别登录界面
Aug 28 Python
Python 执行矩阵与线性代数运算
Aug 01 Python
Python 常用日期处理 -- calendar 与 dateutil 模块的使用
Sep 02 Python
Python tkinter制作单机五子棋游戏
Sep 14 Python
Python实现猜拳与猜数字游戏的方法详解
Apr 06 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
在JavaScript中调用php程序
2009/03/09 PHP
php mysqli查询语句返回值类型实例分析
2016/06/29 PHP
laravel实现于语言包的完美切换方法
2019/09/29 PHP
一段利用WSH获取登录时间的jscript代码
2008/05/11 Javascript
javascript dom 基本操作小结
2010/04/11 Javascript
javascript中数组的sort()方法的使用介绍
2013/12/18 Javascript
jQuery 设置 CSS 属性示例介绍
2014/01/16 Javascript
使用jQuery设置disabled属性与移除disabled属性
2014/08/21 Javascript
JavaScript中实现异步编程模式的4种方法
2014/09/24 Javascript
js仿土豆网带缩略图的焦点图片切换效果实现方法
2015/02/23 Javascript
Bootstrap基础学习
2015/06/16 Javascript
利用jQuery和CSS将背景图片拉伸
2015/10/16 Javascript
js与jQuery实现checkbox复选框全选/全不选的方法
2016/01/05 Javascript
jQuery Easyui使用(一)之可折叠面板的布局手风琴菜单
2016/08/17 Javascript
jQuery中的insertBefore(),insertAfter(),after(),before()区别介绍
2016/09/01 Javascript
nodejs的HTML分析利器node-jquery用法浅析
2016/11/08 NodeJs
jQuery实现最简单实用的分秒倒计时
2017/02/05 Javascript
Vue filter 过滤器、以及在table中的使用介绍
2020/09/07 Javascript
Vue仿百度搜索功能
2020/12/28 Vue.js
Python中使用Beautiful Soup库的超详细教程
2015/04/30 Python
Python字符和字符值(ASCII或Unicode码值)转换方法
2015/05/21 Python
Python3.7中安装openCV库的方法
2018/07/11 Python
Python微医挂号网医生数据抓取
2019/01/24 Python
django框架单表操作之增删改实例分析
2019/12/16 Python
python不使用for计算两组、多个矩形两两间的iou方式
2020/01/18 Python
python爬虫开发之Beautiful Soup模块从安装到详细使用方法与实例
2020/03/09 Python
详解CSS3中border-image的使用
2015/07/18 HTML / CSS
科尔士百货公司官网:Kohl’s
2016/07/11 全球购物
个人找工作求职简历的自我评价
2013/10/20 职场文书
工地资料员岗位职责
2013/12/31 职场文书
《跨越海峡的生命桥》教学反思
2014/02/24 职场文书
三分钟演讲稿范文
2014/04/24 职场文书
自我推荐信范文
2014/05/09 职场文书
另类冲刺标语
2014/06/24 职场文书
开展党的群众路线教育实践活动个人对照检查材料
2014/11/05 职场文书
详解Spring Bean的配置方式与实例化
2022/06/10 Java/Android