2016-11-23 4 views
1

I持つデータフレーム DF =私は今、0番目と1番目でデータフレームDFの2番目と3番目の行を分割したいと思います に(スライス)パンダの

 a b  c 
0 1.0 4.0 5.0 
1 3.0 8.0 45.0 
2 5.0 3.0 67.0 
3 2.0 7.0 34.0 

dfの行、つまりi行目とi行目を分けたいと思う。価格は、データフレームとtとすると予想される結果は、(価格[T] /価格[T-N])である単純な式として

 a b  c 
0 Nan Nan Nan 
1 Nan Nan Nan 
2 5.0/1 3.0/4 67/5 
3 2/3 7/8 34/45 

なければならない行です。 これを行う簡単な方法はありますか? shift

+1

私はあなたが求めているものを理解していません。おそらく出力の例ですか? – erip

+0

いくつか詳細を追加しました。それが理にかなっているかどうか教えてください。 –

答えて

3

使用div

print (df.shift(2)) 
    a b  c 
0 NaN NaN NaN 
1 NaN NaN NaN 
2 1.0 4.0 5.0 
3 3.0 8.0 45.0 

print (df.div(df.shift(2))) 
     a  b   c 
0  NaN NaN  NaN 
1  NaN NaN  NaN 
2 5.000000 0.750 13.400000 
3 0.666667 0.875 0.755556 
+0

賢く簡単です。 – erip

+0

@erip - ありがとうございます。 – jezrael

関連する問題