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 相关文章推荐
python3.5绘制随机漫步图
Aug 27 Python
浅谈Python 列表字典赋值的陷阱
Jan 20 Python
Python爬虫实战之12306抢票开源
Jan 24 Python
Django 缓存配置Redis使用详解
Jul 23 Python
python2爬取百度贴吧指定关键字和图片代码实例
Aug 14 Python
OpenCV+face++实现实时人脸识别解锁功能
Aug 28 Python
python实现批量处理将图片粘贴到另一张图片上并保存
Dec 12 Python
python3的UnicodeDecodeError解决方法
Dec 20 Python
TensorFlow2.1.0安装过程中setuptools、wrapt等相关错误指南
Apr 08 Python
Jupyter Notebook 实现正常显示中文和负号
Apr 24 Python
python怎么删除缓存文件
Jul 19 Python
VSCode中autopep8无法运行问题解决方案(提示Error: Command failed,usage)
Mar 02 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 mysql数据库操作分页类
2008/06/04 PHP
PHP中$_SERVER的详细参数与说明
2008/07/29 PHP
无法载入 mcrypt 扩展,请检查 PHP 配置终极解决方案
2011/07/18 PHP
PHP中鲜为人知的10个函数
2014/02/28 PHP
PHP+swoole实现简单多人在线聊天群发
2016/01/19 PHP
Django中通过定时任务触发页面静态化的处理方式
2018/08/29 PHP
让 JavaScript 轻松支持函数重载 (Part 2 - 实现)
2009/08/04 Javascript
使用ImageMagick进行图片缩放、合成与裁剪(js+python)
2013/09/16 Javascript
利用CSS、JavaScript及Ajax实现高效的图片预加载
2013/10/16 Javascript
node.js中的fs.chownSync方法使用说明
2014/12/16 Javascript
javascript实现input file上传图片预览效果
2015/12/31 Javascript
js实现人民币大写金额形式转换
2016/04/27 Javascript
JavaScript操作表单实例讲解(上)
2016/06/20 Javascript
快速入门Vue
2016/12/19 Javascript
Restify中接入Socket.io报Error:Can’t set headers的错误解决
2017/03/28 Javascript
基于ES6作用域和解构赋值详解
2017/11/03 Javascript
JavaScript学习总结(一) ECMAScript、BOM、DOM(核心、浏览器对象模型与文档对象模型)
2018/01/07 Javascript
JS与SQL方式随机生成高强度密码示例
2018/12/29 Javascript
微信小程序判断用户是否需要再次授权获取个人信息
2019/07/18 Javascript
vue项目中使用多选框的实例代码
2020/07/22 Javascript
design vue 表格开启列排序的操作
2020/10/28 Javascript
SpringBoot在yml配置文件中配置druid的操作
2020/11/16 Javascript
[00:42]《辉夜杯》—职业组预选赛12月3日15点 正式打响
2015/12/03 DOTA
[02:49]DAC2018决赛日TOP5 LGD开启黑暗之门绝杀VP
2018/04/08 DOTA
Python表示矩阵的方法分析
2017/05/26 Python
Python实现的求解最小公倍数算法示例
2018/05/03 Python
Django 开发环境与生产环境的区分详解
2019/07/26 Python
selenium如何定位span元素的实现
2021/01/13 Python
CSS3对背景图片的裁剪及尺寸和位置的设定方法
2016/03/07 HTML / CSS
移动端Web页面的CSS3 flex布局快速上手指南
2016/05/31 HTML / CSS
C#如何调用Word并打开一个Word文档
2013/05/08 面试题
中药专业大学生医药工作求职信
2013/10/25 职场文书
员工工作心得体会
2019/05/07 职场文书
Python集合的基础操作
2021/11/01 Python
Python实现文字pdf转换图片pdf效果
2022/04/03 Python
SpringBoot详解自定义Stater的应用
2022/07/15 Java/Android