Pandas DataFrame の重複メソッド

Beginner

はじめに

この実験では、Python の Pandas ライブラリの duplicated() メソッドについて学びます。duplicated() メソッドは、DataFrame 内の重複行を見つけるために使用されます。

VM のヒント

VM の起動が完了したら、左上隅をクリックして ノートブック タブに切り替え、Jupyter Notebook を使って練習しましょう。

時々、Jupyter Notebook が読み込み完了するまで数秒待つ必要がある場合があります。Jupyter Notebook の制限により、操作の検証を自動化することはできません。

学習中に問題に遭遇した場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。

必要なライブラリをインポートする

まず、pandas ライブラリを pd としてインポートする必要があります。

import pandas as pd

DataFrame を作成する

次に、操作対象の DataFrame を作成しましょう。以下の例の DataFrame を使用します。

df = pd.DataFrame({'Name': ['Navya', 'Vindya', 'Navya', 'Vindya', 'Sinchana', 'Sinchana'],
                   'Skills': ['Python', 'Java', 'Python', 'Java', 'Java', 'Java']})

重複する行を見つける

DataFrame 内の重複行を見つけるには、duplicated() メソッドを使用できます。既定では、重複を識別するためにすべての列を対象とします。重複行は True、一意の行は False を表すブール型の Series を返します。

duplicates = df.duplicated()
print(duplicates)

重複を識別するための列を指定する

重複を識別する際に特定の列のみを対象にする場合は、duplicated() メソッドの subset パラメータに列ラベルを渡すことができます。

duplicates_subset = df.duplicated(subset=['Skills'])
print(duplicates_subset)

重複マーキングを指定する

duplicated() メソッドの keep パラメータは、重複がどのようにマークされるかを決定します。既定では 'first' に設定されており、最初の出現を除きすべての重複を True としてマークします。また、'last' または False に設定することもでき、重複を異なる方法でマークします。

duplicates_keep_last = df.duplicated(keep='last')
print(duplicates_keep_last)

duplicates_keep_false = df.duplicated(keep=False)
print(duplicates_keep_false)

まとめ

この実験では、Pandas の duplicated() メソッドを使用して DataFrame 内の重複行を見つける方法を学びました。特定の列に基づいて重複を識別し、重複マーキングを指定し、重複行を表すブール型の Series を取得する方法を見ました。duplicated() メソッドは、データクリーニングや重複データの識別に役立つツールです。