簡體   English   中英

熊貓 | 比較兩個 CSV 文件並返回匹配項

[英]Pandas | Compare two CSV files and return matches

所以基本上我試圖比較兩個 CSV 文件並返回匹配項。

CSV1:包含關鍵字列表。

keywords

Apple
Banana
Orange

CSV2:包含隨機內容。

content

I like Apples
Banana is my favorite Fruit
Strawberry Smoothies are the best

如果我像這樣在代碼中包含關鍵字......我會得到一個不錯的結果。

import pandas as pd

df = pd.read_csv('CSV1.csv')
result = df[df.content.str.contains('Apple|Banana|Orange')]

由於關鍵字文件越來越大。 我正在尋找一種從 csv 中提取關鍵字並檢查匹配項的方法,而不是將所有關鍵字放入代碼中。

您可以通過使用 pandas isin() 函數( https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.isin.html )來做到這一點

偽代碼是:

# put the csv1's list to lower case
list_csv1 = [i.lower() for i in list_csv1]

# use the isin() function
# again, put the content to lower case
result = df[df.content.str.lower().isin(list_csv1)]

將所有內容都置於小寫並不是強制性的,但這是規范數據和防止丟失的好方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM