Замените строки строк в кадре данных соответствующими словами в других пандах данных

У меня есть df, который имеет 1 столбец

List 0 What are you trying to achieve 1 What is your purpose right here 2 When students don't have a proper foundation 3 I am going to DESCRIBE a sunset 

У меня есть другой dataframe df2

который имеет 2 столбца

  original correct 0 are were 1 sunset sunrise 2 I we 3 right correct 4 is was 

Я хочу заменить такие слова в моем df, который встречается в original столбце моего df2 и заменяет соответствующие слова в correct столбце. и сохранить новые строки в другой df_new

Возможно ли это без использования циклов и итераций и только с использованием простой концепции панд?

т.е. my df_new должен содержать.

  List 0 What were you trying to achieve 1 What was your purpose correct here 2 When students don't have a proper foundation 3 we am going to DESCRIBE a sunrise 

Кроме того, это всего лишь тестовый пример. MY df МОЖЕТ СОДЕРЖАТЬ миллионы строк строки, и поэтому мой df2. Каким будет самый эффективный путь решения, который я могу продолжить?

Одно из многих возможных решений:

 In [371]: boundary = r'\b' ...: ...: df.List.replace((boundary + df2.orignal + boundary).values.tolist(), ...: df2.correct.values.tolist(), ...: regex=True) ...: Out[371]: 0 What were you trying to achieve 1 What was your purpose correct here 2 When students don't have a proper foundation 3 we am going to DESCRIBE a sunrise Name: List, dtype: object