Pandas:对子字符串与字符串列表进行匹配

2024-10-03 11:26:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个所有城市的名单,我们(15万+)在一个熊猫系列,如

import pandas as pd
master_city = pd.Series(['Lake Ketchum', 'Arletta', 'Glenoma', ..., 'Curlew'])

我有另一个系列,包含收件人列表,如:

addresses = pd.series(['Headquarters 1120 N Street Lake Ketchum 916-654-5266', 'District 1 1656 Union Street Glenoma 707-445-6600', '1657 Riverside Drive Redding, CA 96001'])

我想看看地址系列中的每个地址是否与主城市系列中的任何城市完全匹配。这是为了验证城市名称在所有地址中是否正确。在本例中,地址1、2应该匹配,因为它包含与Lake Ketchum和Glenoma完全匹配的内容。你知道吗

这可以用任何序列字符串方法以矢量化的方式实现吗?你知道吗


Tags: importmasterstreetcitypandas地址asseries
1条回答
网友
1楼 · 发布于 2024-10-03 11:26:17

我认为在一个不太复杂的情况下,你可以尝试以下方法:

for item in master_city:
    matches = addresses[addresses.str.contains(item)]
    # matches is a pd series with indices of addresses matching to the `item` 
    # do whatever with matches

相关问题 更多 >