У меня есть пандас DataFrame, который выглядит следующим образом:
Symbol Date Time Bid Price Bid Exchange Bid Size Ask Price Ask Exchange Ask Size
0 ABC 2014-03-03 09:30:00.033000 43.16 Z 1 43.69 P 3
1 ABC 2014-03-03 09:30:00.038000 43.17 P 3 43.69 P 3
2 ABC 2014-03-03 09:30:00.039000 43.17 P 4 43.69 P 3
3 ABC 2014-03-03 09:30:00.151000 43.3 P 6 43.69 P 3
4 ABC 2014-03-03 09:30:00.151000 43.3 P 6 43.42 P 4
Я хочу извлекать каждую минуту данных и делать некоторые вычисления.Чтобы сделать это, итеративно, я бы добавил 1 минуту к start_time
и назвал бы это end_time
, затем выбрал данные между start_time
и end_time
и сделал мой анализ;мой код выглядит так:
import numpy as np
import pandas as pd
import datetime
from datetime import date, time, timedelta
df = pd.read_csv('some_data_file.csv'))
#Converting strings to date and time
df['Date'] = pd.to_datetime(df['Date'])
df['Time'] = pd.to_datetime(df['Time'])
df['Date'] = df['Date'].dt.date
df['Time'] = df['Time'].dt.time
start_date = datetime.date(2014, 3, 3)
end_date = datetime.date(2014, 3, 4)
day_i = df.loc[df['Date']==start_date]
start_time = day_i['Time'][0]
end_time = start_time + timedelta.time(minutes=1)
interval_i = day_i.loc[(day_i['Time'] >= start_time) & (day_i['Time'] <= end_time)]
start_time
формат datetime.time(9, 30, 0, 33000)
.
Когда я запускаю:
end_time = start_time + timedelta.time(minutes=1)
Я получаю эту ошибку:
AttributeError: type object 'datetime.timedelta' has no attribute 'time'