Pandas の groupby
および SQL の HAVING
句に相当する
データ分析では、データのグループ化とフィルター処理が頻繁に行われます。 SQL の GROUP BY
句は行をグループ化し、集計関数の適用を可能にします。 Pandas の groupby
メソッドはこれを反映していますが、SQL の HAVING
句に直接相当するものがありません。
句は、集計値の条件に基づいてグループ化されたデータをフィルタリングします。 次のような SQL クエリ:HAVING
<code class="language-sql">SELECT * ... GROUP BY col_name HAVING condition;</code>
でグループ化し、次に集計条件を満たす行を選択します。col_name
オブジェクトの filter
メソッドを使用してこれを実現します。 このメソッドは、各グループのブール値を返す関数を受け入れます。 groupby
と評価されたグループは保持されます。他のものは破棄されます。True
を考えてみましょう。 df
を模倣するには:HAVING COUNT(*) > 1
<code class="language-python">g = df.groupby('A') filtered_df = g.filter(lambda x: len(x) > 1)</code>
はグループごとに行をカウントする関数を適用します。 複数の行を持つグループは保持され、その結果、それらのグループのみが含まれる filter
になります。filtered_df
メソッドは複雑なフィルタリングをサポートします。ブール値を返す任意の関数を使用できます。 これにより、さまざまな条件に基づいてグループ化されたデータ サブセットを選択する際の柔軟性が大幅に高まります。filter
の groupby
メソッドは、SQL の filter
句の機能を効果的に複製し、さまざまなデータ操作や統計分析のためにグループ化されたデータの効率的な条件付きフィルター処理を可能にします。HAVING
以上がPandas の groupby を使用して SQL の HAVING 句の機能を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。