问题标签 [interval-intersection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
452 浏览

python - 通过重复日期 + uniqueID 在 Pandas 中合并 Intervalindex

SO中的第一个问题,仍在学习python和pandas

编辑:我已经成功地将值 DF 从 long 变为 wide,以便拥有唯一的 id+date 索引(例如,没有 uniqueID 每天有超过 1 行)。但是,我仍然无法达到我想要的结果。

我有几个 DF,我想基于 A)uniqueID 和 B)合并,如果该 uniqueID 被考虑在不同和多个日期范围之间。我发现这个问题接近我正在寻找的东西;但是,在解决方案不可行并且稍微挖掘之后,由于日期重叠(?)

这样做的要点是:如果 uniqueID 在 df_dates_range 中并且其对应的日期列在 date_ranges 的 start:end 范围内,则将 df_values 上的所有值相加。

每个 DF 中还有更多列,但这些是相关的。暗示到处重复,没有特定的顺序。所有 DF 系列的格式都正确。

所以,这里是 df1,dates_range:

和 df2, 值:

从第一个链接开始,我尝试运行以下命令:

但是,我收到此错误。n00b 检查,摆脱了倒数第二天的指数,问题仍然存在:

预期的结果应该是:

或在图形可视化中:

在此处输入图像描述

注意列 S & T @ 第 10 行是 NaN,因为 uniqueID 11 在 v2 期间没有“活动”;但是,如果可能的话,我希望能够以某种方式从 df2 中提取标签;他们 100% 在那里,只是可能不是那个时期,也许是第二个脚本的任务?另外,请注意 col T 是 cols J+K 的聚合

编辑:忘了提到我之前曾尝试使用@firelynx 的解决方案来解决这个问题,但是尽管我的 32gb 内存,我的机器还是无法应付。由于某些原因,SQL 解决方案对我不起作用,存在 sqlite3 库问题