首頁  >  文章  >  後端開發  >  如何刪除 Python DataFrame 中的重複列?

如何刪除 Python DataFrame 中的重複列?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-04 08:11:02717瀏覽

How to Remove Duplicate Columns in Python DataFrames?

刪除Python 資料框中的重複列

使用資料框時,經常會出現重複列,從而產生冗餘並可能導致混亂。如果您只想保留唯一的列,這可能會特別令人沮喪。幸運的是,有一些簡單的解決方案可以在 Python pandas 中刪除重複的欄位。

以名稱刪除列的解決方案

要根據名稱刪除重複的列,請使用以下命令line:

<code class="python">df = df.loc[:,~df.columns.duplicated()].copy()</code>

此方法使用~ 運算子來反轉df.columns.duplicate() 傳回的布林值,該值檢查重複的列名稱。然後,產生的布林數組用於僅選擇 df.loc 索引中的非重複列。新增 .copy() 方法是為了避免日後修改原始資料幀時可能出現錯誤。

以值刪除重複的解決方案

假設你想刪除重複的列通過檢查它們的值,而不僅僅是它們的名字。這可以使用以下程式碼來實現:

<code class="python">df = df.loc[:,~df.apply(lambda x: x.duplicated(),axis=1).all()].copy()</code>

此解決方案避免了轉置資料幀,這對於大型資料幀來說可能非常耗時。它將 lambda 函數應用於每列以檢查重複值。然後,使用產生的布林數組僅選擇沒有重複值的列。

注意: 使用基於值的方法時要小心。在某些情況下,它可能並不總是能產生所需的結果。

其他提示

  • 要刪除重複行,請使用 df 對索引應用相同的技術。 loc[~df.index.duplicates(),:].
  • 使用 drop_duplicates() 方法根據特定列刪除重複行。

以上是如何刪除 Python DataFrame 中的重複列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn