[英]Is there any way to run loop faster?
我正在解決一些字符串匹配問題並使用fuzzywuzzy 模塊來獲得分數。
我的目標數據約為 67K,參考數據幾乎為 4M,我創建了循環,一次迭代大約需要 +- 19 分鍾。 有什么辦法可以讓我的循環運行得更快?
%%timeit
df11['NEW'] = ""
for i in range(0, 4):
df11['NEW'] = process.extractOne(df11['Desc 1'][i], df['Description 2'])
df11.head()
假設:
choice
字符串都比較長(例如 >20 個字符)並且它們不是都非常相似(例如只有一兩個字符不同)那么我可能會使用三元組來索引字符串,然后忽略查詢中沒有足夠三元組的目標行
我一直在玩“20 個新聞組數據集” ,它需要我的筆記本電腦:
fuzzywuzzy.extractOne
這是服用后:
我的代碼很老套,但我可以整理一下,可能會將所有 67k 查詢字符串的總運行時間減少到一天左右,如果您與multiprocessing
並行執行此操作,可能只需幾個小時
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.