zoukankan      html  css  js  c++  java
  • pandas:根据行间差值进行数据合并

    1. 问题描述

     在处理用户上网数据时,用户的上网行为数据之间存在时间间隔,按照实际情况,若时间间隔小于阈值(next_access_time_app),则可把这几条上网行为合并为一条行为数据;若时间间隔大于阈值(next_access_time_app),则可把这几条上网行为分别认为是独立无关的行为数据。 具体可结合下图理解:

    因此需求是有二:一是根据阈值(next_access_time_app)决定是否需要对数据进行合并;二是对数据合并时字段值的处理。其中第二点较为简单,不做表述,重点关注第一点。

    深入思考,其实这个问题的关键是对数据索引进行切片,并保证切出来的索引能被正确区分。

    因此,此问题可以抽象为:如何从一个列表中找出连续的数字组合?

     

    2. 解决办法

    t1 = []
    t2 = []
    for idx in continuous_action_index:
        t1.append(idx)
        if idx + 1 not in continuous_action_index:
            t1.append(idx + 1)
            t2.append([t1[0], t1[-1]])
            t1 = []

    3. 总结

    在遇到问题时,能否快速定位到问题的本质,进而采取相应的办法去解决,本身就是对解决问题能力的一种衡量。

    之前刷过一些Leetcode试题,之所以会觉得和实际业务无法有效结合,其实是因为自己遇到的问题太少而产生的幼稚想法。

    总之,以后在工作中需要多多进行知识的串联,这样才能把能力做到最大化提升。

  • 相关阅读:
    Servlet3.0注解配置访问路径和urlParttern配置
    Servlet生命周期和方法
    Jsoup快速查询
    XML解析——Jsoup解析器
    XML解析
    XML约束
    XML基础——extensible markup language
    不使用注解和使用注解的web-service-dao结构
    注解@Component方式代替xml装配bean
    信息检索中的各项评价指标
  • 原文地址:https://www.cnblogs.com/wkang/p/10115847.html
Copyright © 2011-2022 走看看