У меня есть фрейм данных с несколькими столбцами времени / даты:
{'city': {0: 'HOUSTON', 1: 'HOUSTON', 2: 'HOUSTON', 3: 'HOUSTON', 4: 'HOUSTON'}, 'timeDate_1': {0: Timestamp('2017-07-01 08:00:00'), 1: Timestamp('2017-07-01 08:00:00'), 2: Timestamp('2017-07-01 08:00:00'), 3: Timestamp('2017-07-01 08:00:00'), 4: Timestamp('2017-07-01 08:00:00')}, 'hour': {0: 2, 1: 2, 2: 3, 3: 4, 4: 4}, 'timeDate_2': {0: Timestamp('2017-01-07 00:00:00'), 1: Timestamp('2017-01-07 00:00:00'), 2: Timestamp('2017-01-07 00:00:00'), 3: Timestamp('2017-01-07 00:00:00'), 4: Timestamp('2017-01-07 00:00:00')}}
Мне нужно сопоставить эти столбцы - как если бы timeDate_1
равнялось timeDate_2
(или столбцу hour
),и отбросить все строки, где дата и время не совпадают. Очевидно, что самым простым способом было бы иметь две разные таблицы и просто объединить дату / время, но сейчас я слишком глубоко разбираюсь.
dtypes
каждого столбца:
timeDate_1 datetime64[ns]
hour int64
timeDate_2 datetime64[ns]
, который выдает ошибку, когда я выполняю isin
операцию:
df[df['timeDate_1'].isin(['timeDate_2', 'hour']) ]
ValueError: ('Unknown string format:', 'timeDate_2')
Что самое простоеспособ сделать это? (Помимо развязки всех столбцов и простого соединения)