派生値を使用した「適用」計算に前の行の値を組み込むために Pandas を利用する
Pandas でデータフレームを操作する場合、多くの場合、次のことが必要になります。前の行の値の使用を伴う計算を実行します。前の値も「apply」関数内で計算される場合、これは困難になる可能性があります。
次のデータフレームを考えてみましょう:
Index_Date A B C D ================================ 2015-01-31 10 10 Nan 10 2015-02-01 2 3 Nan 22 2015-02-02 10 60 Nan 280 2015-02-03 10 100 Nan 250
列 C を計算するには、まず次の値をコピーします。 D を最初の行に追加します:
df.loc[0, 'C'] = df.loc[0, 'D']
これで、後続の行について、データフレームを反復処理し、ループを使用して列 C:
<code class="python">for i in range(1, len(df)): df.loc[i, 'C'] = df.loc[i-1, 'C'] * df.loc[i, 'A'] + df.loc[i, 'B']</code>このループにより、各行の C の値が、その前の値と、対応する A および B の値によって決定されることが保証されます。結果のデータフレームは次のようになります。
Index_Date A B C D 0 2015-01-31 10 10 10 10 1 2015-02-01 2 3 23 22 2 2015-02-02 10 60 290 280これに従うと、このアプローチを使用すると、前の値が同じ 'apply' 関数から導出された場合でも、前の行の値を 'apply' 計算に効果的に組み込むことができます。
以上が前の行の値を派生値を使用した Pandas の「適用」計算に組み込む方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。