**DataFrame.query(expr, inplace=False, **kwargs)[source]
Query the columns of a DataFrame with a boolean expression.
通过布尔表达式进行查询
**

待读取文件预览

import pandas as pd

# 读取excel
file_path = r'C:Users123Desktoppandastestexample.xlsx'
df = pd.read_excel(file_path, sheet_name=0, header=0, skipfooter=0)
df1 = df.copy()
print(df)
# 预览dataframe


# A。查询每行中,价格大于100的行。
print("查询每行中,价格大于100的行。")
print(df1.query(' 价格> 100 '))

# A.查询标题中,值等于"长裙","鞋子"的行
print("查询标题中,值等于长裙,鞋子的行")
print(df.query('标题 in ["长裙","鞋子"]'))

# A.查询标题中,值包含“裙”的行
print("查询标题中,值包含“裙”的行")
print(df.query('标题.str.contains("裙")'))

# B.查询编号与购买数量相同的行。
print("查询编号与购买数量相同的行。")
print(df1.query(' 编号 == 购买数量 '))

# B.查询价格*购买数量大于1000的行。
print("查询价格*购买数量大于1000的行。")
print(df1.query(' 价格*购买数量> 1000 '))

# 多重条件查询 & 和 and
print("多重条件查询 & 和 and")
print(df1.query(' (价格<100) &amp; (价格&gt; 30.0)'))

# 传入变量 @
print("传入变量 @")
aver_price = df['价格'].mean()
print(df1.query(' 价格&gt; @aver_price '))


运行结果:

查询每行中,价格大于100的行。
    编号  标题     价格  购买数量    退款状态              订单创建时间              订单付款时间
2    3  长裙  999.0     1     已退款 2022-03-31 21:54:46 2022-03-31 21:54:54
5    6  T恤  999.0     1     已退款 2022-03-31 16:20:27 2022-03-31 16:20:33
7    8  长裙  999.0     5     已退款 2022-03-31 11:13:04 2022-03-31 11:14:32
9   10  T恤  999.0     2  没有申请退款 2022-03-29 23:22:42 2022-03-29 23:22:46
12  13  鞋子  999.0     1     已退款 2022-03-29 13:28:01 2022-03-29 13:28:13
查询标题中,值等于长裙,鞋子的行
    编号  标题     价格  购买数量    退款状态              订单创建时间              订单付款时间
2    3  长裙  999.0     1     已退款 2022-03-31 21:54:46 2022-03-31 21:54:54
7    8  长裙  999.0     5     已退款 2022-03-31 11:13:04 2022-03-31 11:14:32
11  12  鞋子   29.9     1  没有申请退款 2022-03-29 13:28:01 2022-03-29 13:28:13
12  13  鞋子  999.0     1     已退款 2022-03-29 13:28:01 2022-03-29 13:28:13
13  14  鞋子   39.9     1  没有申请退款 2022-03-29 11:06:52 2022-03-29 11:06:57
查询标题中,值包含“裙”的行
   编号  标题     价格  购买数量 退款状态              订单创建时间              订单付款时间
2   3  长裙  999.0     1  已退款 2022-03-31 21:54:46 2022-03-31 21:54:54
7   8  长裙  999.0     5  已退款 2022-03-31 11:13:04 2022-03-31 11:14:32
查询编号与购买数量相同的行。
   编号  标题    价格  购买数量    退款状态              订单创建时间              订单付款时间
0   1  T恤  29.9     1  没有申请退款 2022-03-31 21:54:46 2022-03-31 21:54:54
查询价格*购买数量大于1000的行。
   编号  标题     价格  购买数量    退款状态              订单创建时间              订单付款时间
7   8  长裙  999.0     5     已退款 2022-03-31 11:13:04 2022-03-31 11:14:32
9  10  T恤  999.0     2  没有申请退款 2022-03-29 23:22:42 2022-03-29 23:22:46
多重条件查询 &amp; 和 and
    编号  标题    价格  购买数量    退款状态              订单创建时间              订单付款时间
1    2  T恤  39.9     1  没有申请退款 2022-03-31 21:54:46 2022-03-31 21:54:54
3    4  T恤  39.9     1  没有申请退款 2022-03-31 20:39:47 2022-03-31 20:39:53
13  14  鞋子  39.9     1  没有申请退款 2022-03-29 11:06:52 2022-03-29 11:06:57
传入变量 @
    编号  标题     价格  购买数量    退款状态              订单创建时间              订单付款时间
2    3  长裙  999.0     1     已退款 2022-03-31 21:54:46 2022-03-31 21:54:54
5    6  T恤  999.0     1     已退款 2022-03-31 16:20:27 2022-03-31 16:20:33
7    8  长裙  999.0     5     已退款 2022-03-31 11:13:04 2022-03-31 11:14:32
9   10  T恤  999.0     2  没有申请退款 2022-03-29 23:22:42 2022-03-29 23:22:46
12  13  鞋子  999.0     1     已退款 2022-03-29 13:28:01 2022-03-29 13:28:13

进程结束,退出代码0

原文地址:https://blog.csdn.net/weixin_42821041/article/details/125447802

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_21538.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注