excel - 使用 python 过滤列并填充新 Excel 文件中的相应行
问题描述
我正在尝试过滤一个包含产品列表及其描述的列(它还包含一些产品 ID)。
我使用 Tkinter 作为我的 GUI 来提供 3 个产品 ID 并获取与其相似的 ID(在这种情况下,我提供 12345678s12 并获取所有看起来与其相似的 IDS,例如 34534534q23、98765432y23 等)
脚本如下:
def clean():
df['PO Item Description'] = df['PO Item Description'].astype(str).str.lower()
y =""
M = entryx.get() # Entry one from tkinter
N = entryx2.get() # Entry Two from tkinter
O = entryx3.get() # Entry three from tkinter
listx={'text1':[M,N,O]}
for values in listx.values():
if (listx["text1"][0]==listx["text1"][1]==listx["text1"][2]):
text1 = listx['text1'][0]
for i in range(0,len(text1)):
r=re.match('[a-zA-Z]',text1[i])
if r!=None:
y+='[a-zA-Z]'
r=re.match('[0-9]',text1[i])
if r!=None:
y+='\d'
r=re.match('[.\,_/=&*()%^@$!#-]',text1[i])
if r!=None:
y+='\W'
r=re.match('[ ]',text1[i])
if r!=None:
y+='\s'
else:
pass
ids = df['PO Item Description'].str.extract(r"({})".format(y),expand =False).dropna().tolist() #finds all items with similar Product ID
resultxx= ''
for product_IDs in zip(*[iter(ids)]):
resultxx = pd.DataFrame(ids)
此代码有效,但由于我是 Python 新手,所以非常笨拙。现在我对代码的问题是:
- 我如何使这段代码更有效率?
- 如何获取已过滤列的相应行并将其填充到新的 excel 文件中?
请帮帮我。先感谢您
解决方案
推荐阅读
- javascript - 当我们加载 vue toast UI 图像编辑器组件时,“SPACE”键在整个应用程序中不起作用
- python - Django Post 保存信号给出错误 save() 缺少 1 个必需的位置参数:'self'
- javascript - 如何在 p5.js 中自动选择按钮?
- node.js - 无法在 MongoDB 文档中添加属性
- typescript - 打字稿:如何为分配的全局/窗口对象自动生成 .d.ts 文件
- python - Windows 制作 TFLite 自定义模型
- java - 如何访问具有相同名称但输出不同的子类中的父级和祖父级的方法
- android - 如何在android studio中借助sliderlayout设置自动图像滑块
- java - Apache Sling:配置 Oracle 钱包时出现 Sling 错误 - java.lang.NoClassDefFoundError: oracle/security/pki/OracleWallet
- ruby - ruby 访问修饰符,不同版本的不同输出 2.5 - 2.7