Python Pandas 如何shuffle(打乱)数据


Posted in Python onJuly 30, 2019

在Python里面,使用Pandas里面的DataFrame来存放数据的时候想要把数据集进行shuffle会许多的方法,本文介绍两种比较常用而且简单的方法。

应用情景:

我们有下面以个DataFrame

Python Pandas 如何shuffle(打乱)数据

我们可以看到BuyInter的数值是按照0,-1,-1,2,2,2,3,3,3,3这样排列的,我们希望不保持这个次序,但是同时列属性又不能改变,即如下效果:

Python Pandas 如何shuffle(打乱)数据

实现方法:

最简单的方法就是采用pandas中自带的 sample这个方法。

假设df是这个DataFrame

df.sample(frac=1)

这样对可以对df进行shuffle。其中参数frac是要返回的比例,比如df中有10行数据,我只想返回其中的30%,那么frac=0.3。

有时候,我们可能需要打混后数据集的index(索引)还是按照正常的排序。我们只需要这样操作

df.sample(frac=1).reset_index(drop=True)

-------------------------------------分割线--------------------------------------------------------------

其实,sklearn(机器学习的库)中也有shuffle的方法。

from sklearn.utils import shuffle
df = shuffle(df)

另外,numpy库中也有进行shuffle的方法(不建议)

df.iloc[np.random.permutation(len(df))]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
Nov 18 Python
查看Python安装路径以及安装包路径小技巧
Apr 28 Python
遍历python字典几种方法总结(推荐)
Sep 11 Python
Python实现自动登录百度空间的方法
Jun 10 Python
Python实现替换文件中指定内容的方法
Mar 19 Python
Python扩展内置类型详解
Mar 26 Python
Python3.7实现中控考勤机自动连接
Aug 28 Python
Pandas 按索引合并数据集的方法
Nov 15 Python
python matplotlib拟合直线的实现
Nov 19 Python
使用tensorflow根据输入更改tensor shape
Jun 23 Python
虚拟机下载python是否需要联网
Jul 27 Python
Python爬虫代理池搭建的方法步骤
Sep 28 Python
python tkinter实现屏保程序
Jul 30 #Python
python pandas 时间日期的处理实现
Jul 30 #Python
Django 反向生成url实例详解
Jul 30 #Python
Python Pandas数据中对时间的操作
Jul 30 #Python
python tkinter实现彩球碰撞屏保
Jul 30 #Python
详解python pandas 分组统计的方法
Jul 30 #Python
python文档字符串(函数使用说明)使用详解
Jul 30 #Python
You might like
一段防盗连的PHP代码
2006/12/06 PHP
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
2014/11/11 PHP
PHP中类与对象功能、用法实例解读
2020/03/27 PHP
jquery快捷动态绑定键盘事件的操作函数代码
2013/10/17 Javascript
jquery获得同源iframe内body下标签的值的方法
2014/09/25 Javascript
JavaScript程序中实现继承特性的方式总结
2016/06/24 Javascript
js 判断各种数据类型的简单方法(推荐)
2016/08/29 Javascript
jQuery实现点击任意位置弹出层外关闭弹出层效果
2016/10/19 Javascript
JavaScript中String对象的方法介绍
2017/01/04 Javascript
javascript基础知识之html5轮播图实例讲解(44)
2017/02/17 Javascript
详细分析jsonp的原理和实现方式
2017/11/20 Javascript
AngularJS双向数据绑定原理之$watch、$apply和$digest的应用
2018/01/30 Javascript
微信小程序实现导航栏选项卡效果
2020/06/19 Javascript
浅谈webpack4.x 入门(一篇足矣)
2018/09/05 Javascript
Node.js Buffer模块功能及常用方法实例分析
2019/01/05 Javascript
Vue.js 实现地址管理页面思路详解(地址添加、编辑、删除和设置默认地址)
2019/12/11 Javascript
node事件循环和process模块实例分析
2020/02/14 Javascript
JavaScript实现公告栏上下滚动效果
2020/03/13 Javascript
JS快速实现简单计算器
2020/04/08 Javascript
Vue 实现可视化拖拽页面编辑器
2021/02/01 Vue.js
[52:14]VG vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python读写unicode文件的方法
2015/07/10 Python
Python如何import文件夹下的文件(实现方法)
2017/01/24 Python
Python有序查找算法之二分法实例分析
2017/12/11 Python
Python实现matplotlib显示中文的方法详解
2018/02/06 Python
python实现隐马尔科夫模型HMM
2018/03/25 Python
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
Python3获取电脑IP、主机名、Mac地址的方法示例
2019/04/11 Python
详解Numpy中的数组拼接、合并操作(concatenate, append, stack, hstack, vstack, r_, c_等)
2019/05/27 Python
Django Python 获取请求头信息Content-Range的方法
2019/08/06 Python
奥地利时尚、美容、玩具和家居之家:Kastner & Öhler
2020/04/26 全球购物
房产销售经理职责
2013/12/20 职场文书
企业活动策划方案
2014/06/02 职场文书
校园会短篇的广播稿
2014/10/21 职场文书
学习党章的体会
2014/11/07 职场文书
幼儿园大班开学寄语(2015秋季)
2015/05/27 职场文书