Excel VLOOKUP эквивалент в пандах

У меня есть следующий фрейм данных:

ABC Index 2001-06-30 100 2001-08-31 (=value of A at date B) 2001-07-31 200 2001-09-30 ... 2001-08-31 300 2001-10-31 ... 2001-09-30 400 2001-11-30 ... 

Столбец B состоит из дат столбца A сдвинутых вперед некоторыми. Я хотел бы создать столбец C который состоит из значений из столбца A в date B (желательно в логике, чтобы это сделала формула excel VLOOKUP. Я не ищу просто сдвиг (-2) здесь, потому что в реальной действительности сдвиг между B и Index не всегда равен).

Я попробовал df.loc['B', 'A'] но это, скорее всего, упростило и df.loc['B', 'A'] ошибку.

One Solution collect form web for “Excel VLOOKUP эквивалент в пандах”

Я думаю, вам нужна map по столбцу A :

 df['C'] = df.B.map(df.A) print (df) ABC Index 2001-06-30 100 2001-08-31 300.0 2001-07-31 200 2001-09-30 400.0 2001-08-31 300 2001-10-31 NaN 2001-09-30 400 2001-11-30 NaN 

Это то же самое, что:

 df['C'] = df.B.map(df.A.to_dict()) print (df) ABC Index 2001-06-30 100 2001-08-31 300.0 2001-07-31 200 2001-09-30 400.0 2001-08-31 300 2001-10-31 NaN 2001-09-30 400 2001-11-30 NaN 
  • Как сохранить данные Dataframe / series Pandas в виде цифры?
  • Вычисление числа конкретных последовательных равных значений в векторном виде в пандах
  • Эффективное создание дополнительных столбцов в pandas DataFrame с использованием .map ()
  • Pandas: как изменить все значения столбца?
  • Как сделать группу в пандах с частью строки даты?
  • Элементы процесса с одинаковым идентификатором
  • Pandas: подсчитайте первые последовательные значения True
  • Как выполнить функцию в группе строк в pandas dataframe?
  • Julia Dataframes vs Python pandas
  • pandas: groupby и переменные веса
  • Использование python pandas для анализа CSV с датой в формате Year, Day, Hour, Min, Sec
  • Python - лучший язык программирования в мире.