Python数据集切分实例


Posted in Python onDecember 08, 2018

在处理数据过程中经常要把数据集切分为训练集和测试集,因此记录一下切分代码。

'''
data:数据集
test_ratio:测试机占比
如果data为numpy.numpy.ndarray直接使用此代码
如果data为pandas.DatFrame类型则
  return data[train_indices],data[test_indices]
修改为
  return data.iloc[train_indices],data.iloc[test_indices]
'''
def split_train(data,test_ratio):
  shuffled_indices=np.random.permutation(len(data))
  test_set_size=int(len(data)*test_ratio)
  test_indices =shuffled_indices[:test_set_size]
  train_indices=shuffled_indices[test_set_size:]
  return data[train_indices],data[test_indices]

测试代码如下:

import numpy as np
import pandas as pd
data=np.random.randint(100,size=[25,4])
print(data)

结果如下:

Python数据集切分实例

Python数据集切分实例

从上图可以看出,原数据集按照5:1被随机分为两部分。但是此种方法存在一个缺点?每次调用次函数切分同一个数据集切分出来的结果都不一样,因此常在np.random.permutation(len(data))先调用np.random.seed(int)函数,来确保每次切分来的结果相同。

因此将上述函数改为:

def split_train(data,test_ratio):
  np.random.seed(43)
  shuffled_indices=np.random.permutation(len(data))
  test_set_size=int(len(data)*test_ratio)
  test_indices =shuffled_indices[:test_set_size]
  train_indices=shuffled_indices[test_set_size:]
  return data[train_indices],data[test_indices]

这个函数np.random.seed(43)当参数为同一整数时产生的随机数相同。

以上这篇Python数据集切分实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python连接mongodb操作数据示例(mongodb数据库配置类)
Dec 31 Python
使用Python的判断语句模拟三目运算
Apr 24 Python
Python中内置数据类型list,tuple,dict,set的区别和用法
Dec 14 Python
Python实现找出数组中第2大数字的方法示例
Mar 26 Python
Python使用re模块实现信息筛选的方法
Apr 29 Python
Python paramiko模块使用解析(实现ssh)
Aug 30 Python
用python求一重积分和二重积分的例子
Dec 06 Python
Python使用Tkinter实现滚动抽奖器效果
Jan 06 Python
python GUI库图形界面开发之PyQt5时间控件QTimer详细使用方法与实例
Feb 26 Python
学习python需要有编程基础吗
Jun 02 Python
基于python获取本地时间并转换时间戳和日期格式
Oct 27 Python
能让Python提速超40倍的神器Cython详解
Jun 24 Python
python分批定量读取文件内容,输出到不同文件中的方法
Dec 08 #Python
对python遍历文件夹中的所有jpg文件的实例详解
Dec 08 #Python
pandas求两个表格不相交的集合方法
Dec 08 #Python
对pytorch网络层结构的数组化详解
Dec 08 #Python
pytorch对可变长度序列的处理方法详解
Dec 08 #Python
pytorch 转换矩阵的维数位置方法
Dec 08 #Python
pytorch 调整某一维度数据顺序的方法
Dec 08 #Python
You might like
一个PHP的String类代码
2010/04/20 PHP
ThinkPHP字符串函数及常用函数汇总
2014/07/18 PHP
PHP实现Soap通讯的方法
2014/11/03 PHP
关于取不到由location.href提交而来的上级页面地址的解决办法
2009/07/30 Javascript
Mootools 1.2教程 排序类和方法简介
2009/09/15 Javascript
js注意img图片的onerror事件的分析
2011/01/01 Javascript
jquery实现的让超出显示范围外的导航自动固定屏幕最顶上
2011/09/22 Javascript
JavaScript中常见的字符串操作函数及用法汇总
2015/05/04 Javascript
javascript图片预加载完整实例
2015/12/10 Javascript
Jquery对新插入的节点 绑定Click事件失效的解决方法
2016/06/02 Javascript
node+experss实现爬取电影天堂爬虫
2016/11/20 Javascript
vue中的watch监听数据变化及watch中各属性的详解
2018/09/11 Javascript
解决Vue在封装了Axios后手动刷新页面拦截器无效的问题
2018/11/08 Javascript
vue实现点击按钮下载文件功能
2019/10/11 Javascript
JS实现随机抽选获奖者
2019/11/07 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
Vue实现手机号、验证码登录(60s禁用倒计时)
2020/12/19 Vue.js
[02:41]2015国际邀请赛中国区预选赛观战指南
2015/05/20 DOTA
[03:43]TI9战队采访——PSG.LGD
2019/08/22 DOTA
python zip文件 压缩
2008/12/24 Python
Numpy数据类型转换astype,dtype的方法
2018/06/09 Python
Python 面试中 8 个必考问题
2018/11/16 Python
Python微医挂号网医生数据抓取
2019/01/24 Python
python opencv实现图像边缘检测
2019/04/29 Python
使用python 将图片复制到系统剪贴中
2019/12/13 Python
Pytorch技巧:DataLoader的collate_fn参数使用详解
2020/01/08 Python
几款主流好用的富文本编辑器(所见即所得常用编辑器)介绍
2021/03/17 Javascript
HTML5拖拽文件到浏览器并实现文件上传下载功能代码
2013/06/06 HTML / CSS
《我的伯父鲁迅先生》教学反思
2014/02/12 职场文书
环卫工人节活动总结
2014/08/29 职场文书
乡镇组织委员个人整改措施
2014/09/16 职场文书
寒假安全保证书
2015/02/28 职场文书
欠款证明
2015/06/24 职场文书
学习心得体会
2019/06/20 职场文书
如何理解Vue前后端数据交互与显示
2021/05/10 Vue.js
Django实现drf搜索过滤和排序过滤
2021/06/21 Python