![](/img/trans.png)
[英]how to subtract previous row value from current row value based on condition in pandas DataFrame?
[英]Pandas:subtract current value with previous value in dataframe
我有一個 pandas dataframe:
data = pd.DataFrame({'start':[150,1500,1650,1700,1840],'end':[200,1650,1700,1738,1800]})
我正在嘗試將當前行的起始值減去上一行的結束值,並繼續添加減去的值直到結束。
例如
第二循環 1500-200
第三環 1650-1650..
第五環路 1840-1738
Total_subtract = 1402
到目前為止,我正在嘗試使用 df.values
for x,y in enumerate(audio_output.values):
print(x,y)
if (y[2]+1)-(y[2]) >0:
我無法訪問 previos 索引以從當前循環中減去。
有沒有辦法訪問以前的索引。 我在 itertuples() 中嘗試過,我似乎也無法獲得以前的索引。
使用以下代碼。
sum(data['start'].iloc[1:].values - data['end'].iloc[:-1].values)
您可以使用df.shift :
In [1906]: (data['start'].shift(-1) - data['end']).sum()
Out[1906]: 1402.0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.