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计算N天之后日期的方法
Mar 31 Python
python使用BeautifulSoup分析网页信息的方法
Apr 04 Python
从Python程序中访问Java类的简单示例
Apr 20 Python
Python爬虫框架Scrapy实战之批量抓取招聘信息
Aug 07 Python
利用Python爬取可用的代理IP
Aug 18 Python
钉钉群自定义机器人消息Python封装的实例
Feb 20 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
Aug 07 Python
基于Tensorflow批量数据的输入实现方式
Feb 05 Python
python3实现往mysql中插入datetime类型的数据
Mar 02 Python
Python3.9新特性详解
Oct 10 Python
Python爬取豆瓣数据实现过程解析
Oct 27 Python
python 实现有道翻译功能
Feb 26 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 ios推送(代码)
2013/07/01 PHP
PHP简单实现断点续传下载的方法
2015/09/25 PHP
Thinkphp集成抖音SDK的实现方法
2020/04/28 PHP
使用JQuery进行跨域请求
2010/01/25 Javascript
Jquery CheckBox全选方法代码附js checkbox全选反选代码
2010/06/09 Javascript
一些实用的jQuery代码片段收集
2011/07/12 Javascript
jQuery向后台传入json格式数据的方法
2015/02/13 Javascript
javascript实现添加附件功能的方法
2015/11/18 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
2015/12/08 Javascript
总结JavaScript三种数据存储方式之间的区别
2016/05/03 Javascript
switch语句的妙用(必看篇)
2016/10/03 Javascript
分享vue.js devtools遇到一系列问题
2017/10/24 Javascript
Vue组件通信的四种方式汇总
2018/02/08 Javascript
ES6 系列之 WeakMap的使用示例
2018/08/06 Javascript
vue-cli项目代理proxyTable配置exclude的方法
2018/09/20 Javascript
layui 图片上传+表单提交+ Spring MVC的实例
2019/09/21 Javascript
vue 使用 vue-pdf 实现pdf在线预览的示例代码
2020/04/26 Javascript
讲解python参数和作用域的使用
2013/11/01 Python
Python简单调用MySQL存储过程并获得返回值的方法
2015/07/20 Python
python实现给数组按片赋值的方法
2015/07/28 Python
python使用str & repr转换字符串
2016/10/13 Python
Python tornado队列示例-一个并发web爬虫代码分享
2018/01/09 Python
Django接收自定义http header过程详解
2019/08/23 Python
Python SQLAlchemy入门教程(基本用法)
2019/11/11 Python
纯CSS3实现3D旋转书本效果
2016/03/21 HTML / CSS
css3气泡 css3关键帧动画创建的动态通知气泡
2013/02/26 HTML / CSS
canvas离屏技术与放大镜实现代码示例
2018/08/31 HTML / CSS
英国鲜花速递:Serenata Flowers
2018/04/03 全球购物
德国户外商店:eXXpozed
2020/07/25 全球购物
解释下列WebService名词:WSDL、SOAP、UDDI
2012/06/22 面试题
预备党员党校学习自我评价分享
2013/11/12 职场文书
水务局局长岗位职责
2013/11/28 职场文书
应届毕业生自我评价分享
2013/12/15 职场文书
关工委先进个人事迹材料
2014/05/23 职场文书
社区义诊通知
2015/04/24 职场文书
javascript代码简写的几种常用方式汇总
2021/08/23 Javascript