循环使用数据框和多条件

时间:2019-04-28 04:31:05

标签: python pandas loops dataframe row

我需要两个日期之间的研究持续时间,以行为单位。 我的数据框包含:  - 用户身份  -会议  -活动  - 时间 我需要在一秒钟内进行持续时间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"

但是它不起作用,因为它显示了所有持续时间。

0 个答案:

没有答案