【发布时间】:2020-11-21 16:41:53
【问题描述】:
我正在尝试编写一个函数,该函数将带有“时间戳”列和元组列表的 DataFrame 作为输入。每个元组都将包含一个开始和结束时间。
我想要做的是将数据帧“拆分”为两个新的数据帧,其中第一个包含时间戳值不包含在任何元组的极端之间的行,另一个只是补充。 过滤器元组的数量是未知的。
df = DataFrame({'timestamp':[0,1,2,5,6,7,11,22,33,100], 'x':[1,2,3,4,5,6,7,8,9,1])
filt = [(1,4), (10,40)]
left, removed = func(df, filt)
这应该给我两个数据框
-
左:带有时间戳
[0,5,6,7,100]的行 -
已删除:带有时间戳
[1,2,11,22,33]的行
我相信正确的方法是编写一个可用作过滤器的自定义函数,然后调用以某种方式过滤/屏蔽数据帧,但我找不到如何实现这一点的合适示例。
【问题讨论】: