Как выбрать предыдущую строку с пандами

#python #pandas #dataframe

Вопрос:

Я использую pandas для чтения фрейма данных, я хочу разделить значение строки на предыдущее значение той же строки и так далее. Например:

 1017.0  
1000.0   
 969.0
 

Я хочу 1000/1017, а затем 969/1000 … Заранее спасибо!

Ответ №1:

Вы можете использовать Series.shift() для определенного столбца или DataFrame.shift() для всего фрейма:

 df = pd.DataFrame({'a': [1017.0, 1000.0, 969.0]})
df.a / df.a.shift()

0         NaN
1    0.983284
2    0.969000
Name: a, dtype: float64