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学习笔记(二)基础语法
Jun 06 Python
解读python logging模块的使用方法
Apr 17 Python
使用Python和Prometheus跟踪天气的使用方法
May 06 Python
python实现while循环打印星星的四种形状
Nov 23 Python
用python拟合等角螺线的实现示例
Dec 27 Python
python基于三阶贝塞尔曲线的数据平滑算法
Dec 27 Python
pytorch 实现删除tensor中的指定行列
Jan 13 Python
Python爬虫HTPP请求方法有哪些
Jun 03 Python
Python基础数据类型tuple元组的概念与用法
Aug 02 Python
Python Pandas 删除列操作
Mar 16 Python
python神经网络 使用Keras构建RNN训练
May 04 Python
Python 一键获取电脑浏览器的账号密码
May 11 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面向对象全攻略 (十七) 自动加载类
2009/09/30 PHP
php源代码安装常见错误与解决办法分享
2013/05/28 PHP
屏蔽PHP默认设置中的Notice警告的方法
2016/05/20 PHP
PHP数据库操作二:memcache用法分析
2017/08/16 PHP
Laravel 实现Eloquent模型分组查询并返回每个分组的数量 groupBy()
2019/10/23 PHP
JavaScript 替换Html标签实现代码
2009/10/14 Javascript
jquery miniui 教程 表格控件 合并单元格应用
2012/11/25 Javascript
JS继承--原型链继承和类式继承
2013/04/08 Javascript
jQuery动画与特效详解
2015/02/01 Javascript
JavaScript对数字的判断与处理实例分析
2015/02/02 Javascript
js中substring和substr两者区别和使用方法
2015/11/09 Javascript
JavaScript中的闭包
2016/02/24 Javascript
JavaScript常用字符串与数组扩展函数小结
2016/04/24 Javascript
jQuery过滤特殊字符及JS字符串转为数字
2016/05/26 Javascript
AngularJS基础 ng-include 指令示例讲解
2016/08/01 Javascript
利用jquery给指定的table动态添加一行、删除一行的方法
2016/10/12 Javascript
Vue监听数据对象变化源码
2017/03/09 Javascript
js 去掉字符串前后空格实现代码集合
2017/03/25 Javascript
vue2.0实现导航菜单切换效果
2017/05/08 Javascript
Python中实现常量(Const)功能
2015/01/28 Python
Python中使用partial改变方法默认参数实例
2015/04/28 Python
Windows系统下多版本pip的共存问题详解
2017/10/10 Python
Python定义二叉树及4种遍历方法实例详解
2018/07/05 Python
Python实现两个list求交集,并集,差集的方法示例
2018/08/02 Python
python 不同方式读取文件速度不同的实例
2018/11/09 Python
Python中字符串List按照长度排序
2019/07/01 Python
python使用 request 发送表单数据操作示例
2019/09/25 Python
pandas使用函数批量处理数据(map、apply、applymap)
2020/11/27 Python
CSS3 RGBA色彩模式使用实例讲解
2016/04/26 HTML / CSS
高中生的自我评价
2014/03/04 职场文书
《歌唱二小放牛郎》教学反思
2014/04/19 职场文书
交通工程专业推荐信
2014/09/06 职场文书
大一工商管理职业生涯规划:有梦最美,行动相随
2014/09/18 职场文书
小学生大队委竞选稿
2015/11/20 职场文书
“学党章、守党纪、讲党规”学习心得体会
2016/01/14 职场文书
利用nginx搭建RTMP视频点播、直播、HLS服务器
2022/05/25 Servers