【发布时间】:2018-10-05 02:46:09
【问题描述】:
我有两个数据框
df_a=
Start Stop Value
0 0 100 0.0
1 101 200 1.0
2 201 1000 0.0
df_b=
Start Stop Value
0 0 50 0.0
1 51 300 1.0
2 301 1000 0.0
我想生成一个DataFrame,其中包含由Start 和Stop 标识的区间,其中df_a 和df_b 中的值相同。对于我想存储的每个间隔:如果Value 相同,那么df_a 和df_b 中的值是哪个。
期望的输出:
df_out=
Start Stop SameValue Value_dfA Value_dfB
0 50 1 0 0
51 100 0 0 1
101 200 1 1 1
201 300 0 0 1
[...]
【问题讨论】:
-
您是如何开始使用
102的? -
这是101之后的下一个值(上一个区间的上限)。
-
在给定 2 个
df_a和df_b的情况下,上一个区间的上限不只是100。 -
也许
pandas.merge_asof可能对这个问题感兴趣? (pandas.pydata.org/pandas-docs/stable/generated/…)。 -
@Guybrush,这没有意义,但不要担心 OP 已经澄清了。