我有一个熊猫数据框:
data = pd.DataFrame({'start':[150,1500,1650,1700,1840],'end':[200,1650,1700,1738,1800]})
我正在尝试将当前行的起始值减去前一行的终止值,并一直将相减后的值相加直到结束。
例如
第二循环1500-200
第三循环1650-1650 ..
第五循环1840-1738
总减= 1402
到目前为止,我正在尝试使用df.values
for x,y in enumerate(audio_output.values):
print(x,y)
if (y[2]+1)-(y[2]) >0:
我无法访问previos索引以从当前循环中减去。
是否有一种方法可以访问previos索引。我已经尝试过在itertuples()中似乎也无法获得以前的索引。
答案 0 :(得分:2)
使用以下代码。
sum(data['start'].iloc[1:].values - data['end'].iloc[:-1].values)
答案 1 :(得分:1)
您可以使用 df.shift:
In [1906]: (data['start'].shift(-1) - data['end']).sum()
Out[1906]: 1402.0