鉴于以下数据框:逐行数据帧分割
df = pd.DataFrame(data={'item': [1, 2, 3, 4], 'start':[0.0, 2.0, 8.0, 6.0],
'end': [2.0, 6.0, 8.0, 14.0]})
如何快速通过分段间隔“开始”扩大上述数据帧逐行 - “端”为2的倍数?
对于上面的例子,所产生的数据帧应该是
Out=
item start end
1 0.0 2.0
2 2.0 4.0
2 4.0 6.0
3 8.0 8.0
4 6.0 8.0
4 8.0 10.0
4 10.0 12.0
4 12.0 14.0
性能是最重要的对我来说,因为我有几百万行的检查。 我已经使用布尔索引为那些不需要分段的行过滤整个数据帧。这是一个很快的速度然而,在其余的行中,我应用了一个'for循环',并且创建了正确长度的数据框,我一直在追加。不幸的是,数百万行的性能不足。
期待专家的解决方案!
谢谢。我之前做过类似的事情。我发布了一个我认为更快的替代解决方案。 –