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 相关文章推荐
通过C++学习Python
Jan 20 Python
python处理图片之PIL模块简单使用方法
May 11 Python
Python安装第三方库及常见问题处理方法汇总
Sep 13 Python
Python简单格式化时间的方法【strftime函数】
Sep 18 Python
Python 专题三 字符串的基础知识
Mar 19 Python
基于Django框架利用Ajax实现点赞功能实例代码
Aug 19 Python
python计算阶乘和的方法(1!+2!+3!+...+n!)
Feb 01 Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
Apr 26 Python
pandas取出重复数据的方法
Jul 04 Python
python爬虫项目设置一个中断重连的程序的实现
Jul 26 Python
matplotlib自定义鼠标光标坐标格式的实现
Jan 08 Python
Python如何利用正则表达式爬取网页信息及图片
Apr 17 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
PHP4实际应用经验篇(5)
2006/10/09 PHP
php使用curl检测网页是否被百度收录的示例分享
2014/01/31 PHP
Windows和Linux中php代码调试工具Xdebug的安装与配置详解
2014/05/08 PHP
Yii2实现UploadedFile上传文件示例
2017/02/15 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
PHP使用PDO操作sqlite数据库应用案例
2019/03/07 PHP
php获取小程序码的实现代码(B类接口)
2020/06/13 PHP
js 屏蔽鼠标右键脚本附破解方法
2009/12/03 Javascript
比Jquery的document.ready更快的方法
2010/04/28 Javascript
js 分页全选或反选标识实现代码
2011/08/09 Javascript
js中将URL中的参数提取出来作为对象的实现代码
2011/08/16 Javascript
关于递归运算的顺序测试代码
2011/11/30 Javascript
jquery插件之信息弹出框showInfoDialog(成功/错误/警告/通知/背景遮罩)
2013/01/09 Javascript
JavaScript中json使用自己总结
2013/08/13 Javascript
通过遮罩层实现浮层DIV登录的js代码
2014/02/07 Javascript
node.js中的console.assert方法使用说明
2014/12/10 Javascript
jquery实现textarea输入框限制字数的方法
2015/01/15 Javascript
推荐一个自己用的封装好的javascript插件
2015/01/29 Javascript
webpack 1.x升级过程中的踩坑总结大全
2017/08/09 Javascript
详解Vue 全局引入bass.scss 处理方案
2018/03/26 Javascript
基于打包工具Webpack进行项目开发实例
2018/05/29 Javascript
springboot+vue实现文件上传下载
2020/11/17 Vue.js
python访问纯真IP数据库的代码
2011/05/19 Python
python求最大连续子数组的和
2018/07/07 Python
pycharm运行出现ImportError:No module named的解决方法
2018/10/13 Python
python 如何区分return和yield
2020/09/22 Python
详解利用canvas实现环形进度条的方法
2019/06/12 HTML / CSS
突袭HTML5之Javascript API扩展1—Web Worker异步执行及相关概述
2013/01/31 HTML / CSS
JustFab加拿大:女鞋、靴子、手袋和服装在线
2018/05/18 全球购物
英国鹦鹉店:Parrot Essentials
2018/12/03 全球购物
工程造价专业大学生自荐信
2013/10/01 职场文书
乔布斯斯坦福大学演讲稿
2014/05/23 职场文书
中国汉字听写大会观后感
2015/06/02 职场文书
圆明园纪录片观后感
2015/06/03 职场文书
Windows 11上手初体验:任务栏和开始菜单等迎来大改
2021/11/21 数码科技
Python中的 No Module named ***问题及解决
2022/07/23 Python