ホームページ >バックエンド開発 >Python チュートリアル >Pandas で値の範囲に基づいて DataFrame 行をフィルターするにはどうすればよいですか?
値の範囲によるデータフレーム行のフィルタリング
データフレームを操作する場合、多くの場合、特定の基準に基づいて行を選択する必要があります。このようなシナリオの 1 つは、指定された値の範囲内の行を選択することです。ループを使用することでこれを実現できますが、より効率的でベクトル化されたアプローチが推奨されます。
指定されたコード内:
df = df[99 <= df['closing_price'] <= 101]
比較における真理値があいまいであるため、エラーが発生します。これを解決するには、Pandas シリーズ クラスの between() メソッドを使用します。
解決策:
df = df[df['closing_price'].between(99, 101)]
between() メソッドはパラメータとして 2 つの値を取ります。範囲の下限と上限を表します。条件を満たす行の場合は True、それ以外の場合は False を含むブール系列を返します。このシリーズを使用して、データフレームをフィルタリングして、必要な行のみを含めることができます。
このベクトル化されたソリューションにより、ループの使用が回避され、パフォーマンスと簡潔さが向上します。さらに、読み取りと保守がより直感的に行えます。
以上がPandas で値の範囲に基づいて DataFrame 行をフィルターするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。