Pandas でデータフレームをループする最も効率的な方法
データフレームに格納された複雑な財務データを扱う場合、効率的な反復手法が重要になります。 enumerate(df.values) を使用した従来のアプローチは非効率的になる可能性があります。幸いなことに、pandas はより最適化されたソリューションを導入しました。
Pandas iterrows 関数の使用
最近の pandas バージョンでは、行を反復処理する iterrows 関数が提供されています。
for index, row in df.iterrows(): # Perform logic here
このメソッドはインデックスと行データの両方を提供し、カスタマイズされた分析を可能にしながら効率を確保します。
代替: Pandas itertuples Function
さらに高速なオプションは次のとおりです。 itertuples 関数を使用します:
for idx, row_obj in df.itertuples(index=True): # Perform logic here
このアプローチでは、numpy 関数を利用して行の反復をバイパスしてデータを直接操作し、パフォーマンスを大幅に向上させることができます。
Numpy オペレーションの使用
unutbu が提案しているように、numpy 関数を直接利用すると最速のコードを提供できます。行を反復処理する代わりに、データフレーム全体に操作を適用できます。
df['new_column'] = np.where(df['open'] > 10, 'high', 'low')
このアプローチでは、不要な反復が排除され、numpy のベクトル化された操作を活用して効率が向上します。
以上がPandas データフレームを効率的にループする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。