У меня есть фрейм данных, который индексируется по датам (год и время до секунд), и я хотел бы получить строки, которые соответствуют определенному периоду времени, который я вычисляю. Однако я не могу избавиться от ключевой ошибки при индексации с типом datetime или str. Код выглядит следующим образом:
def get_series(self, id_dataset, time=None):
if time == None:
time = dt.datetime.now()
time = time.replace(second=0, microsecond=0)
dataframe_global = pandas.read_csv('../rsc/datasets/' + str(id_dataset).replace(":", "_") + '.csv',
delimiter=',')
dataframe_global['timestamp_index'] = pandas.to_datetime(dataframe_global['timestamp'])
dataframe_global = dataframe_global.set_index('timestamp_index')
# dataframe_global = pandas.read_csv('../rsc/datasets/historic4.csv', delimiter=',')
previous_measures = []
for diff in self.difference_times:
time1 = last_time - dt.timedelta(minutes=(diff - 30))
time2 = last_time - dt.timedelta(minutes=(diff + 30))
ind = str(time2.isoformat(sep=' '))
ind2 = str(time1.isoformat(sep=' '))
prev = dataframe_global[ind:ind2]
Keyerror появляется в последней строке кода.
Значения:
last_time = datetime (2018-07-04 16: 55: 59.02000)
время = дата / время (2018-07-04 17: 09: 59.02000)
время2 = дата / время (2018-07-04 16: 39: 59.02000)
ind = '2018-07-04 16: 39: 59.02000'
in2 = '2018-07-04 17: 09: 59.02000'
Есть какие-нибудь намеки?
Спасибо!