У меня есть список dates
с датами в виде строковых объектов со всеми датами с 2003-01-01 по 2017-06-30:
['2003-01-01', '2003-01-02', '2003-01-03', '2003-01-04', '2003-01-05', '2003-01-06', '2003-01-07', '2003-01-08', '2003-01-09', '2003-01-10', '2003-01-11', '2003-01-12', '2003-01-13', '2003-01-14', '2003-01-15', '2003-01-16', '2003-01-17', '2003-01-18', '2003-01-19', '2003-01-20', '2003-01-21',...]
И у меня есть датафрейм с объектами даты и времени:
0 2013-01-09 09:07:49
1 2013-01-09 09:16:25
2 2013-01-09 11:14:28
3 2013-01-09 11:25:51
4 2013-01-09 11:25:51
5 2013-01-09 11:33:35
6 2013-01-09 11:35:31
7 2013-01-09 18:11:03
8 2013-03-13 21:04:58
9 2013-03-13 21:05:57
10 2013-03-15 14:07:27
11 2013-03-26 21:53:35
12 2013-03-26 22:19:20
13 2013-04-09 14:21:48
14 2013-04-09 14:22:29
15 2013-04-09 14:22:45
16 2013-04-22 12:10:47
...
Затем я хочу проверить, существуют ли даты в списке dates
в кадре данных. Поэтому я хочу сделать что-то вроде этого:
df = pd.read_csv("blabla.csv")
df['time'] = pd.to_datetime(df['time'])
for j in dates:
if j in df['time']:
return(yes)
Как сравнить строковый объект с объектом даты и времени в кадре данных?
Это мой полный код:
dates=[]
start = date(2003, 1, 1)
end = date(2017, 6, 30)
delta = end - start
for i in range(delta.days + 1):
newdate = start + timedelta(days=i)
dates.append(newdate.strftime("%Y-%m-%d"))
df = pd.read_csv("blabla.csv",parse_dates=True)
df['time'] = pd.to_datetime(df['time'])