実現したいこと
↑のようなカラム名がindex,valueという**データフレーム(test1)**があります。
value列の前の行と比べて数値が減っていたらその行を削除するというプログラムを作りたいです。
書きたいプログラムとしては、
value列の数字を行ごとに引き算していく
例:2行目-1行目→30-9=21
↓
引き算後のデータフレーム(test_diff)
↓
マイナス行を削除したデータフレーム(test2)
※画像データフレーム名がtest1とありますがtest2の間違いです。
これで完成したと思いたいところですが、
index15 を削除してもその下のindex16の値50のためindex14よりも減っている値になってしまいます。
そのため、この計算を何度も繰り返して完成形にもっていきたいです。
該当のソースコード
Python
1 #※実際はindex番号が複数重複しているためindexごとでfor文を回しています。 2 for~以下省略 3 #処理↓ 4 #上下で計算 5 test1_diff=test1['value'].diff() 6 #0行目はそのまま 7 test1_diff[0]=test['value'].iloc[0] 8 #負の数の行を抽出する 9 index=np.where(test1_diff<0)[0] 10 #index行を削除する 11 #以下略
↑上記のプログラムですと1度で終わってしまうので
マイナスがなくなるまで処理を繰り返したいです。
ご教授お願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/07/13 07:29 編集
2022/07/13 07:39
2022/07/13 08:09