Cálculo de la diferencia entre dos filas en Python / Pandas
En Python, ¿cómo puedo hacer referencia a la fila anterior y calcular algo en contra de ella? Específicamente, estoy trabajando condataframes
enpandas
- Tengo un marco de datos lleno de información sobre el precio de las acciones que se ve así:
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
Aquí es cómo he creado este marco de datos:
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')
Comenzando con la fila número 2, o en este caso, supongo que son 250 (PS: ¿ese es el índice?), Quiero calcular la diferencia entre 2011-01-03 y 2011-01-04, para cada entrada en este marco de datos. . Creo que la forma adecuada es escribir una función que tome la fila actual, luego resuelva la fila anterior y calcule la diferencia entre ellas, el uso depandas
apply
Función para actualizar el marco de datos con el valor.
¿Ese es el enfoque correcto? Si es así, ¿debería usar el índice para determinar la diferencia? (nota: todavía estoy en el modo principiante de Python, por lo que el índice puede no ser el término correcto, ni siquiera la forma correcta de implementar esto)