Как получить строки в Pandas фрейме данных с индексом datetime, используя другой индекс datetime? - PullRequest
1 голос
/ 20 февраля 2020

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

DatetimeIndex(['2020-01-02', '2020-01-03', '2020-01-06', '2020-01-07',
               '2020-01-08', '2020-01-09', '2020-01-10', '2020-01-13',
               '2020-01-14', '2020-01-15',
               ...
               '2020-01-17', '2020-01-21', '2020-01-22', '2020-01-23',
               '2020-01-24', '2020-01-27', '2020-01-28', '2020-01-29',
               '2020-01-30', '2020-01-31'],
              dtype='datetime64[ns]', name='Date', length=49098, freq=None)

Я хочу получить строки, которые пересекаются со следующим индексом даты и времени:

DatetimeIndex(['2020-01-02', '2020-01-03', '2020-01-06', '2020-01-07',
               '2020-01-08', '2020-01-09', '2020-01-10'],
              dtype='datetime64[ns]', name='Date', freq=None)

Что такое самый естественный (он же "Pythoni c") способ сделать это?

1 Ответ

4 голосов
/ 20 февраля 2020

Использовать Index.intersection:

idx = idx1.intersection(idx2)

Или, если индексы не были определены ранее:

idx = df1.index.intersection(df2.index)
...