【发布时间】:2016-07-09 09:05:07
【问题描述】:
我有两个时间序列(但作为 DataFrame,即多元序列),ts1 和 ts2。 Ts1 有重复的时间,ts2 没有。对于ts2 中的给定值ts2[i],我想将该值应用于ts1 中在ts2[i] 之前但在ts2[i-1] 之后的实例。
这是一个示例(为简单起见,单变量):
ts1:
t v
0 2016-03-01 0.676188
1 2016-03-01 0.228074
2 2016-03-04 0.371788
3 2016-03-05 0.802350
4 2016-03-06 0.090599
ts2:
t v
0 2016-03-02 1
1 2016-03-05 2
2 2016-03-08 3
我正在寻找这个结果:
t v
0 2016-03-01 1
1 2016-03-01 1
2 2016-03-04 2
3 2016-03-05 2
4 2016-03-06 3
Pandas 加入和合并操作并不能完全实现我想要的。 This post 有点接近,但也不是我想要的。这似乎是一个非常基本的“时间加入”,所以我认为应该有一些开箱即用的方法来做到这一点?
为了排除关于 ts1 中重复时间的问题:实际上,还有另一列(比如 ID 列)可以区分这些时间。所以在现实中,ts1 可以说是有一个MultiIndex。我想使示例尽可能简单,而且 ts2 not 有那个 ID 列。我想完全基于时间应用值。
我正在使用 Python 2.7.x 和 Pandas 0.17.0。如有必要,我可能会升级后者。 提前致谢!
【问题讨论】:
标签: python python-2.7 pandas time-series