ホームページ > バックエンド開発 > Python チュートリアル > Pandas で連続する重複を削除するにはどうすればよいですか?

Pandas で連続する重複を削除するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-15 04:09:02
オリジナル
196 人が閲覧しました

How to Remove Consecutive Duplicates in Pandas?

Pandas での連続した重複の削除

Pandas のdrop_duplicates() メソッドはすべての重複値を削除するのに効果的ですが、連続した重複を識別しません。 。この制限に対処するために、連続する重複のみを選択的に削除する効率的な方法があります。

1 つのアプローチでは、シフト関数を使用して現在の値を前の値と比較します。

a.loc[a.shift() != a]
ログイン後にコピー

このロジックは次の値を返します。連続する重複が False 値によって特徴付けられるマスク。次に、loc メソッドは True 値を持つ行のみを選択し、連続する重複を効果的に削除します。

別のメソッドは diff 関数を利用して変更を検出します。

a.loc[a.diff() != 0]
ログイン後にコピー

ただし、このアプローチは効率が低くなります。微分に伴うオーバーヘッドのため、大規模なデータセットの場合計算。

Update

デフォルトのシフト期間は 1 であるため、shift() と SHIFT(1) は同等の結果を生成することに注意してください。

a.loc[a.shift(1) != a]
ログイン後にコピー

これにより、最初の連続する値が重複として正しく識別されます。

以上がPandas で連続する重複を削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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