在 python 中,如何引用前一行并针对它进行计算?具体来说,我使用的是 pandas
中的 dataframes
-我有一个数据框,里面充满了股票价格信息,看起来像这样:
Date Close Adj Close
251 2011-01-03 147.48 143.25
250 2011-01-04 147.64 143.41
249 2011-01-05 147.05 142.83
248 2011-01-06 148.66 144.40
247 2011-01-07 147.93 143.69
下面是我如何创建这个数据框架:
import pandas
url = 'http://ichart.finance.yahoo.com/table.csv?s=IBM&a=00&b=1&c=2011&d=11&e=31&f=2011&g=d&ignore=.csv'
data = data = pandas.read_csv(url)
## now I sorted the data frame ascending by date
data = data.sort(columns='Date')
从第2行开始,或者在本例中,我猜是250(PS-这是索引吗?),我想计算2011-01-03和2011-01-04之间的差额,对于这个数据框中的每个条目。我认为正确的方法是写一个函数,取当前行,然后计算出前一行,并计算它们之间的差异,使用 pandas
apply
函数更新数据帧的值。
这样做对吗?如果是这样,我应该使用索引来确定差异吗?(注意-我仍然处于 Python 初学者模式,所以 index 可能不是正确的术语,甚至也不是实现它的正确方法)