Как создать двоичный вектор из набора данных с датами и переменными x и вернуть true, если переменная x со значением y существует в течение даты - PullRequest
0 голосов
/ 12 апреля 2020

Как создать двоичный вектор из набора данных, который состоит из 300 000 записей на даты, охватывающие 2012–2019 годы. Цель состоит в том, чтобы создать вектор с датами длины (d1 = 2012-01-02 и d end = 2019-12-31) и значением true или false для переменной x с определенным значением y.

Для длины дат: вернуть true, если существует переменная x со значением y, в противном случае вернуть false.

Вектор должен выглядеть следующим образом:

[d1, True / False, d2, True / False, d3, True / False ..... dn, True / False]

Набор данных выглядит следующим образом, поэтому на дату может входить несколько записей:

datetime    x
2012-01-03, y
2012-01-03, y
2012-01-03, z
2012-01-03, v
2012-01-04, z
2012-01-04, v
2012-01-05, y

Итак, здесь должно получиться:

2012-01-03, True
2012-01-04, False
2012-01-05, True

Что я пробовал делать в настоящее время:

dt = datetime.datetime(2012, 1, 1)
end = datetime.datetime(2019, 12, 30, 23, 59, 59)
step = datetime.timedelta(days=1)

y_exists_ondate = []

while dt < end:
    df[x == 'y'].isin(df['date'] == dt):
        y_exists_ondate.append(dt, False)
    else y_exists_ondate.append(dt, True)
    dt += step 

У кого-нибудь есть советы или указатели о том, как этого добиться?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...