Цикл в датафрейме и мульти-состоянии - PullRequest
0 голосов
/ 28 апреля 2019

Мне нужна продолжительность исследования между двумя датами, которые содержатся в строках). Мой фрейм данных содержит: - Идентификатор пользователя - сессия - деятельность - время И мне нужна длительность diffrenet активности за один раз. Пример кадра данных:

    user ID     session   activity   time
    1            134       write    2018-03-01 11:37:14.733793+00:00
    1            134       video    2018-03-01 11:43:14.733793+00:00
    1            136       video    2018-03-04 11:37:14.733793+00:00
    3            356       write    2018-03-04 11:37:14.733793+00:00

Мне нужно это:

  user ID     session   activity   time                                Duration
    1            134       write    2018-03-01 11:37:14.733793+00:00    00:00:06
    1            134       video    2018-03-01 11:43:14.733793+00:00     no_matter
    1            136       video    2018-03-04 11:37:14.733793+00:00    no_matter
    3            356       write    2018-03-04 11:37:14.733793+00:00    no_matter

Мой код:

Part1 = d_sort_event_browser_short.user_id== d_sort_event_browser_short.user_id.shift(-1)
Part2 = d_sort_event_browser_short.session == d_sort_event_browser_short.session.shift(-1)
for row in d_sort_event_browser_short:
    if (Part1 & Part2).any:
       d_sort_event_browser_short['duration'] =d_sort_event_browser_short.time.shift(-1) - d_sort_event_browser_short.time
       else:
         d_sort_event_browser_short['duration'] = "no__matter"

Но это не работает, потому что показывает всю продолжительность.

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