python - 从给定的 csv 文件(销售数据)中使用 python 开发一个基本的搜索引擎
问题描述
这里是实际的问题陈述看看。销售数据集包括以下详细信息:ID、产品名称、产品线(产品类别)、品牌、上个月售出的商品数量和当前价格。 这是给定的 csv 文件用户可以在任何情况下或以任何顺序输入搜索文本或仅输入产品的部分名称。应始终遵循以下准则:
• 如果搜索文本包含品牌名称,则结果应仅针对相同品牌的产品
• 如果搜索文本包含产品线(类别)的名称,或者甚至是不完整的名称(例如,“ref”代替“冰箱”),则结果应仅针对相应的产品线(类别)
• 在搜索文本中的 n 个单词中,产品名称中应至少存在 n-1 个
Example :
Input : Samsung Refrigerators
Output:
Top Selling Products :
1307 SAMSUNG REF FF 321L RT34K3953S9 3S Refrigerators SAMSUNG 19 29891.79
1153 SAMSUNG REF FF 253L RT28K3023SE/HL SL 3S Refrigerators SAMSUNG 13 21493.38
1474 SAMSUNG REF FF 275L RT30K3723S8/HL 3S Refrigerators SAMSUNG 11 26293.64
Lowest Price Products :
133 SAMSUNG REF DC 192L RR20M182ZR2/HL 3S Refrigerators SAMSUNG 4 16412.5
78 SAMSUNG REF DC 192L RR20M282ZR2/NL 3S Refrigerators SAMSUNG 2 16500
359 SAMSUNG REF DC 212L RR22M272YS8/NL 4S Refrigerators SAMSUNG 9 17388.89
Highest Price Products :
163 SAMSUNG REF SBS 826L RF28K9380SG/TL Refrigerators SAMSUNG 2 218535
115 SAMSUNG REF SBS 838L RH77J90407H Refrigerators SAMSUNG 1 161880
1202 SAMSUNG REF SBS 680L RF60J9090SL/TL Refrigerators SAMSUNG 4 134837.3
我正在考虑拆分给定的输入并在每一行中进行搜索,但是产品/公司有空格,那么我该如何处理呢?
目前这就是我所做的,
import pandas as pd
df = pd.read_csv('sales_data.csv')
input = 'Refrigerators'
input_case = df[df['product_line'].str.contains(input) | df['brand'].str.contains(input)]
TopPrice = input_case.nlargest(3, 'price')
BottomPrice = input_case.nsmallest(3, 'price')
TopSales = input_case.nlargest(3, 'sales')
我如何为给定的案例编码?
解决方案
推荐阅读
- typescript - 使用类验证器验证编号 18.2
- python - 如何通过 python 访问从站点发出的请求的结果?
- sql - 在sql server中按最新日期和更新值分组
- c++ - 我可以在另一个类中实例化一个对象吗?
- shell - 如何在 shell 脚本中剪切我的 grep 输出的所需部分
- html - 为什么textarea的宽度和高度比iframe大?
- powershell - Powershell 检查是否存在 XML 属性
- ios - IB_DESIGNABLE 不在情节提要中呈现
- docker - 绑定挂载不适用于 Docker Desktop 中的 postgresdb
- amazon-web-services - AWS Athena 读取外部 S3 存储桶