Python实现多条件筛选目标数据功能【测试可用】


Posted in Python onJune 13, 2018

本文实例讲述了Python实现多条件筛选目标数据功能。分享给大家供大家参考,具体如下:

python中提供了一些数据过滤功能,可以使用内建函数,也可以使用循环语句来判断,或者使用pandas库,当然在有些情况下使用pandas是为了提高工作效率。举例如下:

a = [('chic', 'JJ'), ('although', 'IN'), ('menu', 'JJ'), ('items', 'NNS'), ('doesnt', 'JJ'),
   ('scream', 'NN'), ('french', 'JJ'), ('cuisine', 'NN')]

这里的a为一个list,列表中还有元组。每一个元组由单词和其词性组成,我们要筛选词性为JJ何NN的单词。可以有三种写法:

第一种,使用内建函数filter:

# -*- coding:utf-8 -*-
#!python3
a = [('chic', 'JJ'), ('although', 'IN'), ('menu', 'JJ'), ('items', 'NNS'), ('doesnt', 'JJ'),
   ('scream', 'NN'), ('french', 'JJ'), ('cuisine', 'NN')]
def filt_nn(data_text):
  nn_data = filter(lambda x: x[1] == 'NN'or x[1] == 'JJ', data_text)
#  print(list(nn_data))
  return list(nn_data)
print(filt_nn(a))

运行结果:

[('chic', 'JJ'), ('menu', 'JJ'), ('doesnt', 'JJ'), ('scream', 'NN'), ('french', 'JJ'), ('cuisine', 'NN')]

第二种,使用pandas包:

# -*- coding:utf-8 -*-
#!python3
import pandas as pd
a = [('chic', 'JJ'), ('although', 'IN'), ('menu', 'JJ'), ('items', 'NNS'), ('doesnt', 'JJ'),
   ('scream', 'NN'), ('french', 'JJ'), ('cuisine', 'NN')]
data = pd.DataFrame(a, columns=['word', 'ps'])
print(data[data.ps.isin(['JJ', 'NN'])].word)

运行结果:

0       chic
2       menu
4     doesnt
5     scream
6     french
7    cuisine
Name: word, dtype: object

第三种,使用循环:

# -*- coding:utf-8 -*-
#!python3
a = [('chic', 'JJ'), ('although', 'IN'), ('menu', 'JJ'), ('items', 'NNS'), ('doesnt', 'JJ'),
   ('scream', 'NN'), ('french', 'JJ'), ('cuisine', 'NN')]
absd = []
for i in a:
  if i[1] == 'NN' or i[1] == 'JJ':
    absd.append(i[0])
print(absd)

得到的结果都相同,如下:

['chic', 'menu', 'doesnt', 'scream', 'french', 'cuisine']

虽然结果相同,但是推荐第一、二种方法,因为这两个方法速度更快。

更多关于Python相关内容可查看本站专题:《Python列表(list)操作技巧总结》、《Python字符串操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python中的__slots__使用示例
Feb 26 Python
用Python实现一个简单的线程池
Apr 07 Python
Nginx搭建HTTPS服务器和强制使用HTTPS访问的方法
Aug 16 Python
Django进阶之CSRF的解决
Aug 01 Python
利用python和ffmpeg 批量将其他图片转换为.yuv格式的方法
Jan 08 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
Feb 22 Python
pyqt5 删除layout中的所有widget方法
Jun 25 Python
详解python中eval函数的作用
Oct 22 Python
pytorch中的自定义数据处理详解
Jan 06 Python
tensorflow指定CPU与GPU运算的方法实现
Apr 21 Python
python属于软件吗
Jun 18 Python
python程序如何进行保存
Jul 03 Python
mac 安装python网络请求包requests方法
Jun 13 #Python
Scrapy基于selenium结合爬取淘宝的实例讲解
Jun 13 #Python
利用Anaconda简单安装scrapy框架的方法
Jun 13 #Python
基于scrapy的redis安装和配置方法
Jun 13 #Python
mac下给python3安装requests库和scrapy库的实例
Jun 13 #Python
Python3实现将本地JSON大数据文件写入MySQL数据库的方法
Jun 13 #Python
解决Mac安装scrapy失败的问题
Jun 13 #Python
You might like
php函数serialize()与unserialize()用法实例
2014/11/06 PHP
详解PHP PDO简单教程
2019/05/28 PHP
laravel5.6实现数值转换
2019/10/23 PHP
JS 继承实例分析
2008/11/04 Javascript
一些javascript一些题目的解析
2010/12/25 Javascript
jquery插件之信息弹出框showInfoDialog(成功/错误/警告/通知/背景遮罩)
2013/01/09 Javascript
jQuery 网易相册鼠标移动显示隐藏效果实现代码
2013/03/31 Javascript
jquery next nextAll nextUntil siblings的区别介绍
2013/10/05 Javascript
js 删除数组的几种方法小结
2014/02/21 Javascript
Nodejs进程管理模块forever详解
2014/06/01 NodeJs
JS 获取鼠标左右键的键值方法
2014/10/11 Javascript
js实现文本框只允许输入数字并限制数字大小的方法
2015/08/19 Javascript
jQuery插件formValidator自定义函数扩展功能实例详解
2015/11/25 Javascript
一款简单的jQuery图片标注效果附源码下载
2016/03/22 Javascript
概述一个页面从输入URL到页面加载完的过程
2016/12/16 Javascript
jQuery、zepto、js常用小技巧
2017/02/12 Javascript
thinkphp标签实现bootsrtap轮播carousel实例代码
2017/02/19 Javascript
JQueryDOM之样式操作
2019/03/27 jQuery
详解axios中封装使用、拦截特定请求、判断所有请求加载完毕)
2019/04/09 Javascript
Vue实现push数组并删除的例子
2019/11/01 Javascript
vue+element 实现商城主题开发的示例代码
2020/03/26 Javascript
总结Python中逻辑运算符的使用
2015/05/13 Python
python简单获取数组元素个数的方法
2015/07/13 Python
用Python写冒泡排序代码
2016/04/12 Python
pandas 获取季度,月度,年度首尾日期的方法
2018/04/11 Python
Python环境Pillow( PIL )图像处理工具使用解析
2019/09/12 Python
flask 实现上传图片并缩放作为头像的例子
2020/01/09 Python
Python logging日志模块 配置文件方式
2020/07/12 Python
细说CSS3中的选择符
2008/10/17 HTML / CSS
韩国休闲女装品牌网站:ANAIS
2016/08/24 全球购物
SIDESTEP荷兰:在线购买鞋子
2019/11/18 全球购物
春节晚会主持词
2014/03/24 职场文书
中秋节国旗下演讲稿
2014/09/13 职场文书
2016毕业实习单位评语大全
2015/12/01 职场文书
关于做家务的心得体会
2016/01/23 职场文书
golang特有程序结构入门教程
2021/06/02 Python