У меня есть фрейм данных, который состоит из 2 столбцов.
Дата - Квартальная дата
Значение индикатора - колеблется от 1 до -1 для данной даты.
Date(Quarter) Indicator Value
1872-12-31 0.5
1873-03-31 -0.2
1873-06-30 -0.15
1873-09-30 0.7
1873-12-31 0.4
1874-03-31 0.9
1874-06-30 -0.3
1874-09-30 -0.1
1874-12-31 0.8
Меня интересует отрицательное значение цикла. Я хочу получить начальную и конечную дату для всех отрицательных значений, но не индивидуально. Например,
First one starts at 1873/01/01 and ends in 1873/06/30
The second one starts at 1874/04/01 and ends in 1874/09/30
Я пытался создать двоичные значения. Например, все положительные будут по-прежнему иметь ноль, а отрицательные числа будут иметь 1. Затем я могу вырезать меньшие фреймы данных и получить даты.
Кажется, я все усложняю.
def f(row):
if row['Indicator value'] < 0:
val = 1
else:
val = 0
return val
df['Binary Value'] = df3.apply(f, axis = 1)
Фрейм данных выглядел так:
Date(Quaterly) Indicator Value Binary Value
1872-12-31 0.5 0
1873-03-31 -0.2 1
1873-06-30 -0.15 1
1873-09-30 0.7 0
1873-12-31 0.4 0
1874-03-31 0.9 0
1874-06-30 -0.3 1
1874-09-30 -0.1 1
1874-12-31 0.8 0
Я застрял после этого. Я не знаю, куда идти отсюда.
Я хочу создать список дат начала и окончания
Start Date End date
1873/01/01 1873/06/30
1874/04/01 1874/09/30