duplicates() メソッド

重複する値または重複行全体がデータフレームに存在するかどうかを検出します。

構文

データフレーム名.duplicates(on = ["キー列", "...n"], add_groups = True|False)

パラメーター

名前 説明
on = ["キー列", "...n"]

重複をテストするキー列。

複数の列でテストする場合、重複すると特定された行は、すべての指定された列で同じ値が必要です。

データフレームのすべての列でテストする場合、重複すると特定された行は完全に同じでなければなりません。

キー列は出力データフレームの左端に配置されます。

addbounds = True | False

省略可能

  • True 出力データフレームにグループ列を含めます
  • False 出力データフレームにグループ列を含めません

グループ列は、一意の各重複値グループに対し、1 ずつ増える連番を割り当てたものです。

ヒント

重複値グループを番号で参照するこの機能は、出力データフレーム内のデータを分析する場合に使用できます。

このパラメーターを省略する場合、グループ列は含まれません。

戻り値

HCL データフレーム。

1 つの列の重複値のテスト

invoicesデータフレームには次の例があります。

  • Invoice_Number 列の重複値のテスト
  • 重複する請求書番号を含むすべての行を inv_num_duplicates データフレームに出力します
inv_num_duplicates = invoices.duplicates(on = ["Invoice_Number"])

2 番目の例では同じことを実行し、一意の各重複値グループに対し、1 ずつ増える連番も割り当てます。

inv_num_duplicates_group_id = invoices.duplicates(on = ["Invoice_Number"], add_groups = True)

2 つ以上の列の組み合わせの重複値のテスト

invoicesデータフレームには次の例があります。

  • Invoice_Number および Vendor_Number 列の値の重複した組み合わせのテスト
  • 同じ請求書番号と同じ業者番号を含むすべての行を invoice_vendor_duplicates データフレームに出力します

このテストと前のテストの間の違いは、2 つの異なる業者番号からの同じ請求書番号が誤検出として報告されないことです。

invoice_vendor_duplicates = invoices.duplicates(on = ["Invoice_Number", "Vendor_Number"])

重複行のテスト

inventoryデータフレームには次の例があります。

  • すべての列の重複値のテスト
  • まったく同じ行をすべて inventory_duplicates データフレームに出力します
inventory_duplicates = inventory.duplicates(on = ["ProdNum", "ProdClass", "Location", "ProdDesc", "ProdStatus", "UnitCost", "CostDate", "SalePrice", "PriceDate"])