Предположим, у меня есть следующие две таблицы.Обратите внимание, что вторая таблица расширяется еще на 15 дней до февраля:
dates1 = pd.DataFrame(data=pd.date_range('2018-1-1 00:00', '2018-1-31 23:59', freq='h'), columns=['date'])
dates2 = pd.DataFrame(data=pd.date_range('2018-1-1 00:00', '2018-2-15 23:59', freq='h'), columns=['date'])
Я хочу отфильтровать второй кадр данных на основе самой последней даты из первого кадра данных.Здесь я нахожу самую последнюю дату из таблицы дат1.В результате получается отметка времени:
most_recent_dates1 = dates1['date'].max()
Timestamp('2018-01-31 23:00:00')
Затем я пытаюсь отфильтровать вторую таблицу следующим образом:
dates3 = dates2[[dates2['date'] <= most_recent_dates1]]
Но я получаю следующую ошибку:
ValueError: Item wrong length 1 instead of 1104.
Как я могу отфильтровать таблицу, используя одну временную метку из другой таблицы, и не получить эту ошибку?Я знаю, что могу сделать это с помощью внутреннего соединения (pandas.merge), но иногда я не хочу использовать внутреннее соединение.