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 相关文章推荐
Python文本相似性计算之编辑距离详解
Nov 28 Python
Python数据结构与算法之图的广度优先与深度优先搜索算法示例
Dec 14 Python
python爬取网页转换为PDF文件
Jun 07 Python
python3解析库BeautifulSoup4的安装配置与基本用法
Jun 26 Python
Python 通过打码平台实现验证码的实现
May 13 Python
python实现网站用户名密码自动登录功能
Aug 09 Python
python数据化运营的重要意义
Nov 25 Python
python实现人机五子棋
Mar 25 Python
Python根据字典的值查询出对应的键的方法
Sep 30 Python
Python jieba结巴分词原理及用法解析
Nov 05 Python
Python爬虫实战之爬取携程评论
Jun 02 Python
python读取mnist数据集方法案例详解
Sep 04 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
Windows2003下php5.4安装配置教程(Apache2.4)
2016/06/30 PHP
在Laravel中实现使用AJAX动态刷新部分页面
2019/10/15 PHP
Avengerls vs Newbee BO3 第二场2.18
2021/03/10 DOTA
9个JavaScript评级/投票插件
2010/01/18 Javascript
JS写的贪吃蛇游戏(个人练习)
2013/07/08 Javascript
关于jQuery中.attr()和.prop()的问题探讨
2013/09/06 Javascript
JavaScript获取Url里的参数
2014/12/18 Javascript
JavaScript获得表单target属性的方法
2015/04/02 Javascript
Jquery实现弹性滑块滑动选择数值插件
2015/08/08 Javascript
Nodejs调用WebService的示例代码
2017/09/29 NodeJs
vue vue-Router默认hash模式修改为history需要做的修改详解
2018/09/13 Javascript
H5+C3+JS实现双人对战五子棋游戏(UI篇)
2020/05/28 Javascript
微信小程序外卖选购页实现切换分类与数量加减功能案例
2019/01/15 Javascript
jQuery each和js forEach用法比较
2019/02/27 jQuery
性能优化篇之Webpack构建速度优化的建议
2019/04/03 Javascript
Threejs实现滴滴官网首页地球动画功能
2020/07/13 Javascript
Vue实现Header渐隐渐现效果的实例代码
2020/11/05 Javascript
Centos5.x下升级python到python2.7版本教程
2015/02/14 Python
10个易被忽视但应掌握的Python基本用法
2015/04/01 Python
老生常谈python之鸭子类和多态
2017/06/13 Python
python用户评论标签匹配的解决方法
2018/05/31 Python
python环境路径配置以及命令行运行脚本
2019/04/02 Python
python多线程案例之多任务copy文件完整实例
2019/10/29 Python
python Jupyter运行时间实例过程解析
2019/12/13 Python
使用jupyter notebook直接打开.md格式的文件
2020/04/10 Python
Python手动或自动协程操作方法解析
2020/06/22 Python
Python爬虫爬取有道实现翻译功能
2020/11/27 Python
python绘图pyecharts+pandas的使用详解
2020/12/13 Python
python中pickle模块浅析
2020/12/29 Python
阿姆斯特丹城市卡:Amsterdam Pass
2019/12/01 全球购物
高中生自我评语大全
2014/01/19 职场文书
微信营销策划方案
2014/02/24 职场文书
红色旅游心得体会
2014/09/03 职场文书
实习介绍信模板
2015/01/30 职场文书
推荐信范文大全
2015/03/27 职场文书
MySQL非空约束(not null)案例讲解
2021/08/23 MySQL