当前位置: 首页 > news >正文

DataFrame.query()--Pandas

1. 函数功能

Pandas 中的一个函数,用于在 DataFrame 中执行查询操作。这个方法会返回一个新的 DataFrame,其中包含符合查询条件的数据行。请注意,query 方法只能用于筛选行,而不能用于筛选列。

2. 函数语法

DataFrame.query(expr, *, inplace=False, **kwargs)

3. 函数参数

参数含义
expr查询字符串;对于不是有效python变量名的列名:如:UnitPrice(USD),需要将列名括在反引号(数字1左边键)中
inplace布尔值,决定是修改原数据框还是创建新的数据框,默认为False:创建新的数据框

3.1单个条件查询

df = pd.DataFrame({'A': range(1, 6),'B': range(10, 0, -2),'C C': range(10, 5, -1)})print(df)print("df.query('A>B'):\n", df.query('A>B'))
print("df.loc[df['A']>df['B'],]\n", df.loc[df['A'] > df['B'],])
print("df.query('B>= `C C`')\n", df.query('B>= `C C`'))

在这里插入图片描述

3.2 inplace参数

df = pd.DataFrame({'A': range(1, 6),'B': range(10, 0, -2),'C C': range(10, 5, -1)})print(df)print("df.query('A>B'):\n", df.query('A>B',inplace=True))print('df:inplace=True\n',df)

在这里插入图片描述

3.3 实例数据查询

df = pd.read_excel('C:\\Users\\changyanhua\\Desktop\\全球超市订单数据.xlsx',usecols=['行 ID', '订购日期', '细分市场', '市场', '类别', '数量'],nrows=1000)
print(df)

在这里插入图片描述

3.3.1 单个条件查询

## 1.单条件查询:市场为亚太地区
df11 = df.query("市场=='亚太地区'")
print("df11.shape:", df11.shape)
df12 = df.loc[df['市场'] == '亚太地区',]
print("df12.shape:", df12.shape)

在这里插入图片描述

3.3.2 多条件查询: 且:and、&

df21 = df.query("市场=='亚太地区' and 类别=='技术'")
print('df21: and', df21.shape)
df22 = df.query("市场=='亚太地区' & 类别=='技术'")
print('df22: &', df22.shape)
df23 = df.loc[(df['市场'] == '亚太地区') & (df['类别'] == '技术'),]
print('df23: loc', df23.shape)

在这里插入图片描述
在这里插入图片描述

3.3.3 多条件:或:or 、|

df31 = df.query("市场=='亚太地区' or 类别=='技术'")
print('df31: and', df31.shape)
df32 = df.query("市场=='亚太地区' | 类别=='技术'")
print('df32: &', df32.shape)
df33 = df.loc[(df['市场'] == '亚太地区') | (df['类别'] == '技术'),]
print('df33: loc', df33.shape)
print(df32)

在这里插入图片描述
可以看出在进行多条件查询时,query()方法具有优势,能够优化代码。

http://www.lryc.cn/news/136800.html

相关文章:

  • 【C语言】美元名字和面额对应问题
  • uniapp隐藏底部导航栏(非自定义底部导航栏)
  • CSS background 背景
  • 安防监控视频平台EasyCVR视频汇聚平台和税务可视化综合管理应用方案
  • 深度学习实战50-构建ChatOCR项目:基于大语言模型的OCR识别问答系统实战
  • 计算机安全学习笔记(I):访问控制安全原理
  • Linux 虚拟机安装 hadoop
  • FxFactory 8 Pro Mac 苹果电脑版 fcpx/ae/motion视觉特效软件包
  • 解决问题:如何在 Git 中查看提交历史
  • 不同规模的测试团队分别适合哪些测试用例管理工具?测试用例管理工具选型指南
  • 服务器遭受攻击,CPU升高,流量升高,你一般如何处理
  • GPT生产实践之定制化翻译
  • SpringMVC入门笔记
  • 如何构建多域名HTTPS代理服务器转发
  • 【Java 高阶】一文精通 Spring MVC - 数据验证(七)
  • 木叶飞舞之【机器人ROS2】篇章_第一节、ROS2 humble及cartorgrapher安装
  • Git版本管理(02)patch操作和分支操作整理
  • 前端需要理解的HTML知识
  • 机器学习笔记 - 数据科学中基于 Scikit-Learn、Tensorflow、Pandas 和 Scipy的7种最常用的特征工程技术
  • 深眸科技创新赋能视觉应用产品,以AI+机器视觉解决行业应用难题
  • 2023年国赛 高教社杯数学建模思路 - 案例:异常检测
  • 【Electron】使用electron-builder打包时下载electron失败或慢的解决方案
  • stm32之16.外设定时器——TIM3
  • vue3自定义指令防止表单重复提交
  • 无涯教程-Perl - wait函数
  • DFMA是一种设计思想与方法论
  • 黑客自学路线
  • 怎么维护自己的电脑
  • ansible(2)-- ansible常用模块
  • 一文了解Gin对Cookie的支持z