Python データフレームの重複列の削除
データフレームを使用する場合、重複した列が頻繁に発生し、冗長性が生じ、混乱を引き起こす可能性があります。これは、一意の列のみを保持したい場合に特にイライラする可能性があります。幸いなことに、Python pandas には重複した列を削除する簡単なソリューションがあります。
名前で列を削除するソリューション
名前に基づいて重複した列を削除するには、次のコマンドを使用します。 line:
<code class="python">df = df.loc[:,~df.columns.duplicated()].copy()</code>
このアプローチでは、~ 演算子を使用して、重複する列名をチェックする df.columns.duplicated() によって返されるブール値を反転します。結果のブール配列は、df.loc インデックス内の重複していない列のみを選択するために使用されます。 .copy() メソッドは、後で元のデータフレームを変更する際の潜在的なエラーを回避するために追加されています。
値による重複を削除するソリューション
重複する列を削除するとします。名前だけでなく値を確認することによって。これは、次のコードを使用して実現できます。
<code class="python">df = df.loc[:,~df.apply(lambda x: x.duplicated(),axis=1).all()].copy()</code>
このソリューションでは、大規模なデータフレームでは時間がかかる可能性があるデータフレームの転置を回避します。各列にラムダ関数を適用して重複値をチェックします。結果のブール配列を使用して、重複する値のない列のみが選択されます。
注: 値ベースのアプローチを使用する場合は注意してください。場合によっては、必ずしも望ましい結果が得られるとは限りません。
追加のヒント
以上がPython DataFrames で重複する列を削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。