ホームページ > バックエンド開発 > Python チュートリアル > Pandas で Groupby 操作を実行中に追加の列を保持するにはどうすればよいですか?

Pandas で Groupby 操作を実行中に追加の列を保持するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-10-25 06:13:29
オリジナル
505 人が閲覧しました

How Can I Keep Additional Columns While Performing Groupby Operations in Pandas?

Groupby 操作中に追加の列を維持する

パンダで group-by 操作を実行する場合、特定のデータを集計するときに追加の列を維持することが望ましいことがよくあります。カラム。これにより、追加の結合や操作を必要とせずに効率的なデータ操作が可能になります。

上記の例を考えてみましょう。ここでは、「otherstuff」などの他の列を保持しながら、「diff」列の最小値を持つ行を削除したいと考えています。 。」デフォルトでは、pandas は、min() などの groupby 関数や集計関数を使用するときに追加の列を削除します。

この問題を解決するには、2 つの効果的なアプローチがあります。

方法 1: idxmin を使用する() 行インデックスを識別する

idxmin() は、指定された列の最小値を含む行のインデックスを返します。この機能を利用すると、条件を満たす行のみを選択することができます。次のコードは、このアプローチを示しています。

<code class="python">df.loc[df.groupby("item")["diff"].idxmin()]</code>
ログイン後にコピー

方法 2: 最初の要素の並べ替えと選択

もう 1 つの方法では、「diff」列によってデータフレームを並べ替え、各グループの最初の要素を選択します。これにより、他の列を維持しながら、最小の「diff」値を持つ行を確実に取得できます。次のコードは、このメソッドを示しています。

<code class="python">df.sort_values("diff").groupby("item", as_index=False).first()</code>
ログイン後にコピー

どちらのアプローチでも、結果は、「otherstuff」列を保持しながら、「diff」が最小値を持つ行のみを含むデータフレームになります。行インデックスは 2 つのメソッド間で異なる場合がありますが、内容は同じです。

以上がPandas で Groupby 操作を実行中に追加の列を保持するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート