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 相关文章推荐
10个易被忽视但应掌握的Python基本用法
Apr 01 Python
Python文档生成工具pydoc使用介绍
Jun 02 Python
Python中的fileinput模块的简单实用示例
Jul 09 Python
Python抓取电影天堂电影信息的代码
Apr 07 Python
Python实现更改图片尺寸大小的方法(基于Pillow包)
Sep 19 Python
对Python random模块打乱数组顺序的实例讲解
Nov 08 Python
python PrettyTable模块的安装与简单应用
Jan 11 Python
利用python实现AR教程
Nov 20 Python
基于python3.7利用Motor来异步读写Mongodb提高效率(推荐)
Apr 29 Python
Python脚本如何在bilibili中查找弹幕发送者
Jun 04 Python
浅谈python处理json和redis hash的坑
Jul 16 Python
Python可视化学习之seaborn绘制矩阵图详解
Feb 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 XML操作类DOMDocument
2009/12/16 PHP
PHP图片上传代码
2013/11/04 PHP
PHP实现图片压缩的两则实例
2014/07/19 PHP
php基于表单密码验证与HTTP验证用法实例
2015/01/06 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
TopList标签和JavaScript结合两例
2007/08/12 Javascript
javascript DOM编程实例(智播客学习)
2009/11/23 Javascript
JQuery的AJAX实现文件下载的小例子
2013/05/15 Javascript
jquery实现弹出窗口效果的实例代码
2013/11/28 Javascript
js身份证判断方法支持15位和18位
2014/03/18 Javascript
javascript解三阶幻方(九宫格)
2015/04/22 Javascript
Jquery中$.post和$.ajax的用法小结
2015/04/28 Javascript
js正则匹配出所有图片及图片地址src的方法
2015/06/08 Javascript
JS中的eval 为什么加括号
2016/04/13 Javascript
如何处理JSON中的特殊字符
2016/11/30 Javascript
webpack实现热更新(实施同步刷新)
2017/07/28 Javascript
Angular4学习笔记之实现绑定和分包
2017/08/01 Javascript
Javascript快速实现浏览器系统通知
2017/08/26 Javascript
详解Webpack + ES6 最新环境搭建与配置
2018/06/04 Javascript
elementUI 设置input的只读或禁用的方法
2018/10/30 Javascript
vue中使用rem布局代码详解
2019/10/30 Javascript
JavaScript数组排序的六种常见算法总结
2020/08/18 Javascript
vue实现图片裁剪后上传
2020/12/16 Vue.js
在Python中用keys()方法返回字典键的教程
2015/05/21 Python
Python从MP3文件获取id3的方法
2015/06/15 Python
pycharm: 恢复(reset) 误删文件的方法
2018/10/22 Python
Python判断对象是否为文件对象(file object)的三种方法示例
2019/04/26 Python
python将dict中的unicode打印成中文实例
2020/05/11 Python
卸载tensorflow-cpu重装tensorflow-gpu操作
2020/06/23 Python
Python3中对json格式数据的分析处理
2021/01/28 Python
Petmate品牌官方网站:宠物用品
2018/11/25 全球购物
英国比较机场停车场网站:Airport Parking Essentials
2019/12/01 全球购物
开业庆典邀请函
2014/01/08 职场文书
运动会800米加油稿
2014/02/22 职场文书
超市中秋节促销方案
2014/03/21 职场文书
奥巴马获胜演讲稿
2014/05/15 职场文书