私は、列の値が累積的に少なくとも5つ上がったか、または累積的に少なくとも5つ下がった行を抽出し、これらの累積的変化の兆候(up_or_down
)を得ることに興味があります。pandas:変更が累積されたすべての行のみをしきい値で保持しますか?
df = pd.DataFrame({'x': range(16), 'y': [1,10,14,12,13,9,4,2,6,7,10,11,16,17,14,11]})
それは得られるはず:たとえば
、のは、私は次のように列y
にこれを適用するとしましょう
x y # up_or_down
1 10 # +1
6 4 # -1
10 10 # +1
12 16 # +1
15 11 # -1
私のデータフレームがかなり大きいので、私は期待していたことがありますiterrows()
でそれを繰り返すのではなく、パンダのAPIを使ってこれをネイティブに行う素晴らしいベクター化された方法です。