pandas では、DataFrame の各行に関数を適用するために apply() 関数が一般的に使用されます。 。ただし、前の行の値も同じ apply() メソッドを使用して計算される場合に問題が発生します。
次の DataFrame を考えてみましょう:
Index_Date | A | B | C | D |
---|---|---|---|---|
10 | 10 | NaN | 10 | |
2 | 3 | NaN | 22 | |
10 | 60 | NaN | 280 | |
10 | 100 | NaN | 250 |
df.loc[0, 'C'] = df.loc[0, 'D']
次に、残りの行を反復処理し、目的の計算で C 値を更新します。for i in range(1, len(df)):
df.loc[i, 'C'] = df.loc[i-1, 'C'] * df.loc[i, 'A'] df.loc[i, 'B']
これらの操作後の最終データフレーム:A | B | C | D | |
---|---|---|---|---|
10 | 10 | 10 | 10 | |
2 | 3 | 23 | 22 | |
10 | 60 | 290 | 280 |
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3