本文实例讲述了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实现多条件筛选目标数据功能【测试可用】

本文地址: http://www.cppcns.com/jiaoben/python/230156.html

python多条件筛选数据-Python实现多条件筛选目标数据功能【测试可用】相关推荐

  1. python乘法表代码注释_Python统计python文件中代码,注释及空白对应的行数示例【测试可用】...

    本文实例讲述了Python实现统计python文件中代码,注释及空白对应的行数.分享给大家供大家参考,具体如下: 其实代码和空白行很好统计,难点是注释行 python中的注释分为以#开头的单行注释 或 ...

  2. python处理表格数据-Python数据处理(二):处理 Excel 数据

    在本章和下一章里,我们将研究两种文件类型实例:Excel 文件和 PDF,并给出几条一般性说明,在遇到其他文件类型时可以参考. 处理 Excel 比上章讲的处理 CSV.JSON.XML 文件要难多了 ...

  3. 基于python爬虫数据处理_基于Python爬虫的校园数据获取

    苏艺航 徐海蛟 何佳蕾 杨振宇 王佳鹏 摘要:随着移动时代的到来,只适配了电脑网页.性能羸弱的校园教务系统,已经不能满足学生们的移动查询需求.为此,设计了一种基于网络爬虫的高实用性查询系統.它首先通过 ...

  4. 云中数据_免费备份和共享云中数据的最佳网站

    云中数据 We've been told many times how important backups are, although we may not realize it until it's ...

  5. 【数据治理相关概念】(三)数据溯源综述

    目录 1.1 概念和定义 1.2 数据溯源模型 1.3 几种主要的数据溯源模型 1.4 数据溯源方法 1.5 数据溯源的应用 1.1 概念和定义 数据溯源(data provenance)是一个新兴的 ...

  6. python怎么筛选excel数据_【In Action】工具-2-用Excel三分钟才能完成的复杂筛选,python十秒完成...

    为什么有的人工作任务越来越多,却不用加班.同样的分析到了你的手里,简直泰山压顶?"效率"二字要时刻放在心头.类似的处理做第二遍时就需要反思,有没有更简便.省时的方法? 01 分析任 ...

  7. python筛选excel某一列中相同的数据

    求赞----求关注 python筛选excel某一列中相同的数据 1.需要cmd下载 pip install pandas  的模板 2.注意文件的路径问题不要出错 3.还有文件的编码格式 ----- ...

  8. python轮胎_如何用数据分析方法剖析途虎轮胎数据

    前言 本次分析只是用途虎养车网案例分享数据学习方法和方法论,禁止用作商业目的,同时声明数据与关键指标未必真实有效. 概述 笔者将通过以下环节,展示整个过程. 涉及知识: 结构化思维,描述性分析,探索性 ...

  9. Python数模笔记-StatsModels 统计回归(3)模型数据的准备

    1.读取数据文件 回归分析问题所用的数据都是保存在数据文件中的,首先就要从数据文件读取数据. 数据文件的格式很多,最常用的是 .csv,.xls 和 .txt 文件,以及 sql 数据库文件的读取 . ...

最新文章

  1. Andriod anim translate中的属性介绍
  2. linux oracle脚本编写,Linux 脚本编写基础(一)--语法
  3. [codevs] 1098 均分纸牌
  4. 计算机启动过程-阮一峰
  5. PostgreSQL高可用性、负载均衡、复制与集群方案介绍
  6. python调用数据库存储过程_python调用MySql存储过程
  7. unity_AR(一) 安卓手机无法显示模型和无法播放动画问题
  8. Python项目实战:爬取斗图网表情包图片
  9. C++程序设计必知:多文件结构和编译预处理命令
  10. 中国顶级黑客Top10,最后一位你猜是谁
  11. selenium之滑块操作
  12. TinyGPS使用说明
  13. 51 Nod 一维战舰
  14. 波士顿房价预测python决策树_波士顿房价预测 - 最简单入门机器学习 - Jupyter
  15. 江苏省南京市2021年电子信息申报通知(中、高级)
  16. python--绘制WRF模式近地面风场以及辐射
  17. 解决项目部署到阿里云服务器邮件发送失败的方法
  18. Enhanced ShockBurst (ESB)原文翻译
  19. B. Nick and Array(数学+贪心)Codeforces Round #569 (Div. 2)
  20. 为什么ASIC的频率可以达到GHz,而FPGA只能达到几百MHz?

热门文章

  1. CSS input输入框 placehoder的样式修改
  2. LeCun转发AgileGAN:人脸转卡通、漫画、油画
  3. 电火花线切割加工的步骤及要求
  4. 怎么取消手机APP自动续费?详细方法来了,轻松易懂
  5. wifi 中间人攻击_什么是中间人攻击?该如何防止?
  6. HTTPS 原理及中间人攻击
  7. sigmoid、 tanh、 tanh、 tanh比较
  8. es6新特性总结及使用说明
  9. 有什么虚拟主播配音软件可以支持文字配音?
  10. 手机画画,随时随地满足你的绘画欲望