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中生成器和yield语句的用法详解
Apr 17 Python
详解Python装饰器由浅入深
Dec 09 Python
python实现闹钟定时播放音乐功能
Jan 25 Python
Python中反射和描述器总结
Sep 23 Python
python中pika模块问题的深入探究
Oct 13 Python
Python根据服务获取端口号的方法
Sep 25 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
Nov 30 Python
Python 实现try重新执行
Dec 21 Python
Python3.7黑帽编程之病毒篇(基础篇)
Feb 04 Python
基于Tensorflow使用CPU而不用GPU问题的解决
Feb 07 Python
jupyter实现重新加载模块
Apr 16 Python
Python函数参数分类原理详解
May 28 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 smarty的预保留变量总结
2008/12/04 PHP
php中的curl使用入门教程和常见用法实例
2014/04/10 PHP
写一段简单的PHP建立文件夹代码
2015/01/06 PHP
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
2016/10/11 PHP
php解决crontab定时任务不能写入文件问题的方法分析
2019/09/16 PHP
PHP全局使用Laravel辅助函数dd
2019/12/26 PHP
javascript获得CheckBoxList选中的数量
2009/10/27 Javascript
JavaScript flash复制库类 Zero Clipboard
2011/01/17 Javascript
namespace.js Javascript的命名空间库
2011/10/11 Javascript
javascript学习笔记(十五) js间歇调用和超时调用
2012/06/20 Javascript
js 判断图片是否加载完以及实现图片的预下载
2014/08/14 Javascript
深入理解JavaScript系列(42):设计模式之原型模式详解
2015/03/04 Javascript
你一定会收藏的Nodejs代码片段
2016/02/04 NodeJs
JavaScript原生数组Array常用方法
2017/04/06 Javascript
关于JavaScript中forEach和each用法浅析
2017/07/27 Javascript
vue实现登陆登出的实现示例
2017/09/15 Javascript
JS中图片压缩的方法小结
2017/11/14 Javascript
javascript动态创建对象的属性详解
2018/11/07 Javascript
js前端如何写一个精确的倒计时代码
2019/10/25 Javascript
jQuery实现数字华容道小游戏(实例代码)
2020/01/16 jQuery
jQuery Datatables 动态列+跨列合并实现代码
2020/01/30 jQuery
python写xml文件的操作实例
2014/10/05 Python
Python魔术方法详解
2015/02/14 Python
Python函数可变参数定义及其参数传递方式实例详解
2015/05/25 Python
Python书单 不将就
2017/07/11 Python
tensorflow实现测试时读取任意指定的check point的网络参数
2020/01/21 Python
使用python-cv2实现视频的分解与合成的示例代码
2020/10/26 Python
Python 利用flask搭建一个共享服务器的步骤
2020/12/05 Python
2021年值得向Python开发者推荐的VS Code扩展插件
2021/01/25 Python
VSCode中autopep8无法运行问题解决方案(提示Error: Command failed,usage)
2021/03/02 Python
iKRIX意大利网上商店:男女豪华服装和配件
2019/10/09 全球购物
生物化工工艺专业应届生求职信
2013/10/08 职场文书
模具专业推荐信
2013/10/30 职场文书
考察现实表现材料
2014/05/19 职场文书
会计系毕业求职信
2014/08/07 职场文书
Go gorilla/sessions库安装使用
2022/08/14 Golang