сопоставьте группу python, затем str.извлеките слово по группам

#python

#питон

Вопрос:

 import re import pandas as pd  data = pd.DataFrame({'city': ['A','A', 'B','B','C','C','D','E','F'],   'road': ['cityok1 mato','bank1','north', 'citygo tyuop',' bank1','bank pt','bankcity 11','northA 35','north']})   maping_table=pd.DataFrame ({'city': ['A','A','A','B','B','B','C','C','D','D','E','E'],   'road': ['no','nor','cityok1','nort','ba','citygo','ban','bank','n','bankcity','northA','north']})  

как извлечь в фрейм данных

 data_extract=data = pd.DataFrame({'city': ['A','A', 'B','B','C','C','D','E','F'],   'road': ['cityok1 mato','bank1','north', 'citygo tyuop',' bank1','bank pt','bankcity 11','northA 35','north'],  'ertractroad': ['cityok1','','','citygo','','','bankcity','northA','']  })  

Я стараюсь использовать не то, что хочу. как это исправить

 data['ertractroad'] = data['road'].str.extract('({})'.format('|'.join(maping_table['road'])),   flags=re.IGNORECASE, expand=False).str.lower().fillna('')  

Комментарии:

1. Пожалуйста, проясните вашу конкретную проблему или предоставьте дополнительные сведения, чтобы выделить именно то, что вам нужно. Поскольку это написано в настоящее время, трудно точно сказать, о чем вы просите.