鑑於以下數據框:逐行數據幀分割
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循環',並且創建了正確長度的數據框,我一直在追加。不幸的是,數百萬行的性能不足。
期待專家的解決方案!
謝謝。我之前做過類似的事情。我發佈了一個我認爲更快的替代解決方案。 –