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 06 Python
python pandas库的安装和创建
Jan 10 Python
解决在Python编辑器pycharm中程序run正常debug错误的问题
Jan 17 Python
使用python itchat包爬取微信好友头像形成矩形头像集的方法
Feb 21 Python
修改Pandas的行或列的名字(重命名)
Dec 18 Python
Python使用pdb调试代码的技巧
May 03 Python
Python文件操作模拟用户登陆代码实例
Jun 09 Python
Python调用C语言程序方法解析
Jul 07 Python
python属于哪种语言
Aug 16 Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
Dec 14 Python
Python集合set()使用的方法详解
Mar 18 Python
Python中的 No Module named ***问题及解决
Jul 23 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
PHP 基本语法格式
2009/12/15 PHP
php中3des加密代码(完全与.net中的兼容)
2012/08/02 PHP
基于PHPExcel的常用方法总结
2013/06/13 PHP
微信支付开发维权通知实例
2016/07/12 PHP
Laravel模型事件的实现原理详解
2018/03/14 PHP
thinkPHP5框架auth权限控制类与用法示例
2018/06/12 PHP
JavaScript Undefined,Null类型和NaN值区别
2008/10/22 Javascript
js中判断控件是否存在
2010/08/25 Javascript
编写js扩展方法判断一个数组中是否包含某个元素
2013/11/08 Javascript
原生js和jquery中有关透明度设置的相关问题
2014/01/08 Javascript
jQuery选择器源码解读(一):Sizzle方法
2015/03/31 Javascript
详解javascript遍历方式
2015/11/11 Javascript
基于JavaScript如何实现ajax调用后台定义的方法
2015/12/29 Javascript
javascript执行环境及作用域详解
2016/05/05 Javascript
微信小程序版翻牌小游戏
2018/01/26 Javascript
javascript trie前缀树的示例
2018/01/29 Javascript
React Router v4 入坑指南(小结)
2018/04/08 Javascript
详解Vue 动态组件与全局事件绑定总结
2018/11/11 Javascript
微信小程序上传图片到php服务器的方法
2019/05/23 Javascript
Vue动态修改网页标题的方法及遇到问题
2019/06/09 Javascript
关于微信小程序map组件z-index的层级问题分析
2019/07/09 Javascript
JS实现音量控制拖动
2020/01/15 Javascript
Vue中el-form标签中的自定义el-select下拉框标签功能
2020/04/20 Javascript
再谈Python中的字符串与字符编码(推荐)
2016/12/14 Python
python中for用来遍历range函数的方法
2018/06/08 Python
python 中字典嵌套列表的方法
2018/07/03 Python
python opencv读mp4视频的实例
2018/12/07 Python
python画微信表情符的实例代码
2019/10/09 Python
django商品分类及商品数据建模实例详解
2020/01/03 Python
Python rabbitMQ如何实现生产消费者模式
2020/08/24 Python
html5新增的属性和废除的属性简要概述
2013/02/20 HTML / CSS
法国美发器材和产品购物网站:Beauty Coiffure
2016/12/05 全球购物
农民工工资支付承诺函
2014/03/31 职场文书
三好学生个人先进事迹材料
2014/05/17 职场文书
2014银行领导班子群众路线对照检查材料思想汇报
2014/09/17 职场文书
Vue实现导入Excel功能步骤详解
2021/07/03 Vue.js