欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > pandas中基于范围条件进行表连接

pandas中基于范围条件进行表连接

2024/10/25 16:47:08 来源:https://blog.csdn.net/Pydatas/article/details/142219733  浏览:    关键词:pandas中基于范围条件进行表连接

pandas中基于范围条件进行表连接

来自:Python大数据分析 费弗里

表连接是我们日常开展数据分析过程中很常见的操作,在pandas中基于join()merge()等方法,可以根据左右表连接依赖字段之间对应值是否相等,来实现常规的表连接。

但在有些情况下,我们可能需要基于一些“特殊”的条件匹配,来完成左右表之间的表连接操作,譬如对于下面的示例数据框demo_leftdemo_right

假如我们需要基于demo_leftleft_id等于demo_rightright_id,且demo_leftdatetimedemo_rightdatetime之间相差不超过7天,这样的条件来进行表连接,「通常的做法」是先根据left_idright_id进行连接,再在初步连接的结果表中基于left_idright_id进行分组筛选运算,过滤掉时间差大于7天的记录:

而除了上面的方式以外,我们还可以基于之前的文章中给大家介绍过的pandas的功能拓展库pyjanitor中的「条件连接方法」,直接基于范围比较进行连接,且该方式还支持numba加速运算:

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com