羽中飞人 2023-07-28 21:37 采纳率: 48.1%
浏览 19
已结题

pandas如何筛选出任意1分钟内的行

需求产生的原因是:

我要做聊天内容的数据分析,然后发现,很多人在聊天时,一段内容不一定在一条消息里能说清楚,经常会分成几条消息发过来

而这几条消息,一般会在1分钟内表达完,所以应该把这几条消息,看成一条消息,来做分析,所以有了这个需求

现在pandas有AB两列数据,A列数据是聊天时间,B列数据是聊天内容
现在我想筛选出A列聊天时间在任意1分钟内的聊天内容

比如,下图,应该分成这么两段数据来分析,但如何分开呢

img

  • 写回答

10条回答 默认 最新

  • Crayon112 2023-07-31 10:55
    关注

    简单说下思路吧,代码就不给了。
    首先使用pandas的函数通过第一行(时间那一行)进行一次排序,利用滑动窗口的方式进行一分钟的窗口限制。你可以理解为有两个位置分别控制一分钟的左侧和一分钟的右侧。左侧不动,右侧慢慢向时间增长的方向移动,当左侧比右侧大一分钟时,这个窗口分成一组,之后移动左侧指针一次,按照上述方式移动并分组最后得到所有分组的结果,结束条件就是右侧的指针到达表的末尾。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(9条)

报告相同问题?

问题事件

  • 系统已结题 8月12日
  • 已采纳回答 8月4日
  • 修改了问题 7月28日
  • 修改了问题 7月28日
  • 展开全部