「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Pandas GroupBy.apply が最初の行を重複しているように見えるのはなぜですか?

Pandas GroupBy.apply が最初の行を重複しているように見えるのはなぜですか?

2024 年 11 月 9 日に公開
ブラウズ:909

Why Does Pandas GroupBy.apply Seem to Duplicate the First Row?

Pandas GroupBy.apply の最初のグループの重複: 動作の理解

Pandas で groupby 関数を使用する場合、apply メソッドは関数を最初のグループに 2 回適用しているように見える場合があります。データフレームの行。この動作は予期せぬように見えますが、仕様によるものです。

二重アプリケーションの目的

適用関数は、結合するデータの形状を決定する必要があります。これを実現するために、指定された関数 (この場合は checkit) を 2 回呼び出します。最初の呼び出しは出力の形状を推測するのに役立ち、2 番目の呼び出しはグループに対する操作を実行します。

二重効果の回避

ユースケースに応じて、代替手段を使用することで二重適用を回避できます。 Functions:

  • aggregate: 戻り値は、平均や合計などの要約統計量である必要があります。
  • transform:戻り値は、入力グループと同じ形状である必要があります。
  • filter: 戻り値は、保持する行を示すブール型インデックスである必要があります。

これらの関数は戻り値に特定の形状を強制するため、二重適用の必要がなくなります。

副作用の考慮事項

適用している関数に副作用がない場合、つまり、元のデータ フレームは変更されません。その場合、二重適用は問題にならない可能性があります。ただし、関数がデータ操作を実行する場合、最初の行に二重適用すると、意図しない結果が生じる可能性があります。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3