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删除指定目录下过期文件的2个脚本分享
Apr 10 Python
Python FTP操作类代码分享
May 13 Python
Django Admin实现上传图片校验功能
Mar 06 Python
解析Mac OS下部署Pyhton的Django框架项目的过程
May 03 Python
python 3.6.4 安装配置方法图文教程
Sep 18 Python
python实现对指定字符串补足固定长度倍数截断输出的方法
Nov 15 Python
python实现文本界面网络聊天室
Dec 12 Python
【python】matplotlib动态显示详解
Apr 11 Python
NumPy 数组使用大全
Apr 25 Python
python制作英语翻译小工具代码实例
Sep 09 Python
Python实现线性插值和三次样条插值的示例代码
Nov 13 Python
Python 如何测试文件是否存在
Jul 31 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 error_log 函数的使用
2009/04/13 PHP
解析php中用PHPMailer来发送邮件的示例(126.com的例子)
2013/06/24 PHP
php通过sort()函数给数组排序的方法
2015/03/18 PHP
PHP实现简单数字分页效果
2015/07/26 PHP
php实现博客,论坛图片防盗链的方法
2016/10/15 PHP
php实现文件预览功能
2017/05/23 PHP
PHP实现防盗链的方法分析
2017/07/25 PHP
javascript call方法使用说明
2010/01/11 Javascript
仅IE9/10同时支持script元素的onload和onreadystatechange事件分析
2011/04/27 Javascript
bootstrap改变按钮加载状态
2014/12/01 Javascript
javascript实现图片轮播效果
2016/01/20 Javascript
Bootstrap和Java分页实例第一篇
2016/12/23 Javascript
微信小程序实战之运维小项目
2017/01/17 Javascript
Javascript中JSON数据分组优化实践及JS操作JSON总结
2017/12/22 Javascript
30分钟快速入门掌握ES6/ES2015的核心内容(上)
2018/04/18 Javascript
Nodejs中的JWT和Session的使用
2018/08/21 NodeJs
Vue CLI3搭建的项目中路径相关问题的解决
2018/09/17 Javascript
vue-cli 3.0 版本与3.0以下版本在搭建项目时的区别详解
2018/12/11 Javascript
Javascript实现鼠标点击冒泡特效
2019/12/24 Javascript
详解node.js 事件循环
2020/07/22 Javascript
Python使用scrapy抓取网站sitemap信息的方法
2015/04/08 Python
Python的Django框架中的Context使用
2015/07/15 Python
单利模式及python实现方式详解
2018/03/20 Python
python实现石头剪刀布小游戏
2021/01/20 Python
Python中print和return的作用及区别解析
2019/05/05 Python
Python调用Windows命令打印文件
2020/02/07 Python
Python定时任务APScheduler原理及实例解析
2020/05/30 Python
浅谈Pycharm的项目文件名是红色的原因及解决方式
2020/06/01 Python
应届大学生自荐信
2013/12/05 职场文书
好听的队名和口号
2014/06/09 职场文书
2014幼儿园班主任工作总结
2014/12/04 职场文书
法务专员岗位职责
2015/02/14 职场文书
2016入党积极分子心得体会
2016/01/06 职场文书
《槐乡的孩子》教学反思
2016/02/20 职场文书
一文帮你理解PReact10.5.13源码
2021/04/03 Javascript
Java 轮询锁使用时遇到问题
2022/05/11 Java/Android