python中pandas.DataFrame排除特定行方法示例


Posted in Python onMarch 12, 2017

前言

大家在使用Python进行数据分析时,经常要使用到的一个数据结构就是pandas的DataFrame,关于python中pandas.DataFrame的基本操作,大家可以查看这篇文章。

pandas.DataFrame排除特定行

如果我们想要像Excel的筛选那样,只要其中的一行或某几行,可以使用isin()方法,将需要的行的值以列表方式传入,还可以传入字典,指定列进行筛选。

但是如果我们只想要所有内容中不包含特定行的内容,却并没有一个isnotin()方法。我今天的工作就遇到了这样的需求,经常查找之后,发现只能换种方式使用isin()来实现这个需求。

示例如下:

In [3]: df = pd.DataFrame([['GD', 'GX', 'FJ'], ['SD', 'SX', 'BJ'], ['HN', 'HB'
 ...: , 'AH'], ['HEN', 'HEN', 'HLJ'], ['SH', 'TJ', 'CQ']], columns=['p1', 'p2
 ...: ', 'p3'])

In [4]: df
Out[4]:
 p1 p2 p3
0 GD GX FJ
1 SD SX BJ
2 HN HB AH
3 HEN HEN HLJ
4 SH TJ CQ

如果只想要p1为GD和HN的两行,可以这么做:

In [8]: df[df.p1.isin(['GD', 'HN'])]
Out[8]:
 p1 p2 p3
0 GD GX FJ
2 HN HB AH

但是如果我们想要除了这两行之外的数据,就需要绕点路了。

原理是先把p1取出并转换为列表,然后再从列表中去不需要的行(值)去除,然后再在DataFrame中使用isin()

In [9]: ex_list = list(df.p1)

In [10]: ex_list.remove('GD')

In [11]: ex_list.remove('HN')

In [12]: ex_list
Out[12]: ['SD', 'HEN', 'SH']

In [13]: df[df.p1.isin(ex_list)]
Out[13]:
 p1 p2 p3
1 SD SX BJ
3 HEN HEN HLJ
4 SH TJ CQ

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者使用python能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python 中的列表解析和生成表达式
Mar 10 Python
python批量同步web服务器代码核心程序
Sep 01 Python
Python中装饰器兼容加括号和不加括号的写法详解
Jul 05 Python
用python处理MS Word的实例讲解
May 08 Python
python 制作自定义包并安装到系统目录的方法
Oct 27 Python
在python中bool函数的取值方法
Nov 01 Python
Python获取时间范围内日期列表和周列表的函数
Aug 05 Python
python socket 聊天室实例代码详解
Nov 14 Python
详解Python 实现 ZeroMQ 的三种基本工作模式
Mar 24 Python
详解Python高阶函数
Aug 15 Python
解决python3中os.popen()出错的问题
Nov 19 Python
Python paramiko使用方法代码汇总
Nov 20 Python
Python中functools模块函数解析
Mar 12 #Python
python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)
Mar 12 #Python
Python中str.format()详解
Mar 12 #Python
python中pandas.DataFrame对行与列求和及添加新行与列示例
Mar 12 #Python
Python中关键字nonlocal和global的声明与解析
Mar 12 #Python
Python中模块string.py详解
Mar 12 #Python
Python中第三方库Requests库的高级用法详解
Mar 12 #Python
You might like
Zend Framework教程之Bootstrap类用法概述
2016/03/14 PHP
PHP实现的简单分页类及用法示例
2016/05/06 PHP
Yii2中如何使用modal弹窗(基本使用)
2016/05/30 PHP
thinkphp自带验证码全面解析
2016/09/18 PHP
关于Aptana Studio生成自动备份文件的解决办法
2009/12/23 Javascript
基于jQuery的简单的列表导航菜单
2011/03/02 Javascript
js如何获取兄弟、父类等节点
2014/01/06 Javascript
jquery禁用右键单击功能屏蔽F5刷新
2014/03/17 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
2015/12/03 Javascript
JavaScript中Textarea滚动条不能拖动的解决方法
2015/12/15 Javascript
Bootstrap基本布局实现方法详解
2016/11/25 Javascript
video.js使用改变ui过程
2017/03/05 Javascript
layui实现二维码弹窗、并下载到本地的方法
2019/09/25 Javascript
VueQuillEditor富文本上传图片(非base64)
2020/06/03 Javascript
js实现搜索提示框效果
2020/09/05 Javascript
vue等两个接口都返回结果再执行下一步的实例
2020/09/08 Javascript
Python远程桌面协议RDPY安装使用介绍
2015/04/15 Python
OpenCV搞定腾讯滑块验证码的实现代码
2019/05/18 Python
django的ORM操作 增加和查询
2019/07/26 Python
浅谈pytorch grad_fn以及权重梯度不更新的问题
2019/08/20 Python
Python数组拼接np.concatenate实现过程
2020/04/18 Python
Python爬虫爬取百度搜索内容代码实例
2020/06/05 Python
Python如何合并多个字典或映射
2020/07/24 Python
Python正则re模块使用步骤及原理解析
2020/08/18 Python
Python classmethod装饰器原理及用法解析
2020/10/17 Python
python+selenium实现12306模拟登录的步骤
2021/01/21 Python
Intimissimi德国网上商店:意大利知名内衣品牌
2018/04/03 全球购物
美国最大的存储市场:SpareFoot
2018/07/23 全球购物
中国京东和泰国中央集团合资的网站:JD CENTRAL
2020/08/22 全球购物
会计应届生的自荐信
2013/12/13 职场文书
党员批评与自我批评
2014/02/12 职场文书
奥巴马经典演讲稿
2014/09/13 职场文书
运动会广播稿200米(5篇)
2014/10/15 职场文书
学生喝酒检讨书500字
2014/11/02 职场文书
办公室主任个人总结
2015/02/28 职场文书
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
2021/11/11 Python