【问题标题】:Filtering start time of one row and end time of another row using python使用python过滤一行的开始时间和另一行的结束时间
【发布时间】:2019-07-15 08:06:21
【问题描述】:

我有一个包含重复活动的数据集。我需要以这样一种方式过滤那些我有第一次出现的开始日期和最后一次出现的结束日期以及单个活动。

数据框:

请参考提供的链接。 任何帮助将不胜感激。

谢谢

【问题讨论】:

标签: python pandas dataframe filtering


【解决方案1】:

我猜您正在尝试将“活动”的发生与开始和结束时间相关联。 例如,如果您正在尝试俱乐部“a”,那么第一个“a”的开始时间和最后一个“a”的结束时间就是您想要获得的。

【讨论】:

    【解决方案2】:

    如有必要,首先将列转换为日期时间:

    df[['Start','End']] = df[['Start','End']].apply(pd.to_datetime)
    

    然后聚合first 或 last 或 min 和 max 每组:

    df1 = df.groupby('Activity', as_index=False).agg({'Start':'first', 'End':'last'})
    

    df1 = df.groupby('Activity', as_index=False).agg({'Start':'min', 'End':'max'})
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-03
      • 2021-04-10
      • 1970-01-01
      • 2020-09-25
      • 2020-04-28
      • 2014-06-27
      • 1970-01-01
      • 2019-09-26
      相关资源
      最近更新 更多