【pandas笔记】查询query

pandas中query函数可以实现数据的查找功能,类似于数据库的select功能。

实例说明

>>> import pandas as pd
# 导入上图中的数据
>>> df = pd.read_excel(r'resample_data.xlsx')

# 查询2022-05-20到2022-05-25之间的数据
>>> df.query('"2022-05-20" <= date < "2022-05-25"')
         date     open     high  weekday
26 2022-05-20  8825.58  8976.35        4
27 2022-05-23  8985.73  9005.87        0
28 2022-05-24  8978.07  8978.10        1

# 多条件AND查询,用 & 连接
>>> df.query('"2022-05-20" <= date < "2022-05-25" & open > 8900')
         date     open     high  weekday
27 2022-05-23  8985.73  9005.87        0
28 2022-05-24  8978.07  8978.10        1

# 多条件OR查询,用 | 连接
# 可以加括号,消除符号优先级的影响
>>> df.query('("2022-05-20" <= date < "2022-05-25") | open > 9600')
         date     open     high  weekday
0  2022-04-11  9620.50  9644.11        0
2  2022-04-13  9615.72  9616.23        2
26 2022-05-20  8825.58  8976.35        4
27 2022-05-23  8985.73  9005.87        0
28 2022-05-24  8978.07  8978.10        1

# 引入外部变量
>>> query_list = [1, 2, 3]
>>> df.query('weekday not in @query_list')
         date     open     high  weekday
0  2022-04-11  9620.50  9644.11        0
4  2022-04-15  9460.91  9643.38        4
5  2022-04-18  9473.89  9508.39        0
9  2022-04-22  8839.38  8920.13        4
10 2022-04-25  8707.82  8728.92        0
14 2022-04-29  8461.67  8750.18        4
16 2022-05-06  8650.90  8838.78        4
17 2022-05-09  8761.02  8851.00        0
21 2022-05-13  9158.55  9211.67        4
22 2022-05-16  9159.94  9172.02        0
26 2022-05-20  8825.58  8976.35        4
27 2022-05-23  8985.73  9005.87        0
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写了个程序,对Pandas的绝大部分函数及其说明进行了中文翻译。原网址:http://pandas.pydata....
    TSIANG阅读 10,965评论 0 4
  • 全书的重点在四五六章:如何建表、如何建索引、如何查询。第一章讲解了一些基本概念:锁与事物隔离 重中之重:4.1数据...
    AbrahamW阅读 4,567评论 0 0
  • 今天看到一位朋友写的mysql笔记总结,觉得写的很详细很用心,这里转载一下,供大家参考下,也希望大家能关注他原文地...
    信仰与初衷阅读 10,164评论 0 30
  • 一、MySQL架构与历史 A.并发控制 1.共享锁(shared lock,读锁):共享的,相互不阻塞的 2.排他...
    ZyBlog阅读 19,919评论 3 177
  • 为什么用elasticsearch 在引入elasticsearch前,我们的数据一般都存储在mysql上,所有的...
    递归宇宙阅读 4,685评论 0 0