我需要帮助计算利润/亏损百分比。我有如下数据框
Date Price
2017-5-20 50
2017-5-20 60
2017-5-20 45
我需要在数据框中添加一个新列来计算连续行的损益百分比,例如
Date Price Prof/Loss
2017-5-20 50 0
2017-5-20 60 16.66
2017-5-20 45 -23.07
答案 0 :(得分:0)
df = pd.DataFrame()
df['Date'] = ['2017-05-20', '2017-05-20', '2017-05-20']
df['Price'] = [50, 60, 45]
df['Prof/Loss'] = (df['Price'] / df['Price'].shift())*100 - 100
首先,我认为您用于计算损失/利润的数学方法是错误的,希望我为您解决了该问题。
第二,您可以使用.shift()方法获取上一行,使用.shift(-1)获取下一行。