Search code examples
pythonpandasdatetimeindex

How to check if pandas DateTimeIndex dates belong to a list?


I have a pandas datetime index idx with with minute frequency, I also have a list(or set) of dates list_of_dates. I would like to return a boolean array of the same size of idx with the condition that the dates of datetime index belong is in the list_of_dates. Is it possible to do it in a vectorized way (i.e. not using a for loop)?


Solution

  • Since you're trying to compare only the dates, you could remove the times and compare like so:

    >>> df.index.normalize().isin(list_of_dates)
    

    Or:

    >>> df.index.floor('D').isin(list_of_dates)