ホームページ >バックエンド開発 >Python チュートリアル >Pandas を使用してデータ内の重複値を処理する方法: 重複排除方法の包括的な分析
Pandas 重複排除手法の包括的な分析: データ内の重複値を簡単に処理します。具体的なコード例が必要です。
はじめに:
データ分析のプロセスにおいてデータに重複した値が含まれる状況がよく発生します。これらの重複した値は、分析結果に誤解を与えたり、データの精度に影響を与えたりする可能性があります。したがって、重複排除はデータ処理の重要な部分です。 Python で広く使用されているデータ処理ライブラリとして、Pandas はさまざまな重複排除メソッドを提供し、データ内の重複値を簡単に処理できます。この記事では、Pandas で一般的に使用される重複排除手法を分析し、読者がこれらの手法をよりよく理解して適用できるように、具体的なコード例を示します。
1.drop_duplicates メソッド
drop_duplicates メソッドは、Pandas で最も一般的に使用される重複排除メソッドの 1 つです。指定された列または行に基づいてデータから重複した値を削除します。具体的な使用法は次のとおりです。
df.drop_duplicates(subset=None, keep='first', inplace=False)
このうち、df は重複排除の対象となるデータセットを表し、subset は指定された列または行で、デフォルトは None で、すべての列が重複排除されることを意味します。 keep パラメータは、どの繰り返し値を保持するかを示します。デフォルトは、最初に出現した値を保持することを意味する 'first' です。最後に出現した値を保持することを意味する 'last' を選択することもできます。 inplace パラメータは、元のデータ セットを変更するかどうかを示します。デフォルト値は False で、重複排除された新しいデータ セットを返すことを意味します。
具体的な例:
重複する値を含むデータセット df があるとします:
import pandas as pd df = pd.DataFrame({'A': [1, 2, 3, 1, 2, 3], 'B': ['a', 'b', 'c', 'a', 'b', 'c']}) print(df)
実行結果は次のとおりです:
A B 0 1 a 1 2 b 2 3 c 3 1 a 4 2 b 5 3 c
drop_duplicates メソッドを使用できます。重複する値を削除するには:
df_drop_duplicates = df.drop_duplicates() print(df_drop_duplicates)
実行結果は次のとおりです:
A B 0 1 a 1 2 b 2 3 c
結果から、drop_duplicates メソッドがデータ セット内の重複した値を正常に削除したことがわかります。
2. 重複メソッド
重複メソッドは、Pandas でよく使用されるもう 1 つの重複排除メソッドです。 drop_duplicates メソッドとは異なり、duplicated メソッドはブール系列を返し、各行または列の要素が重複しているかどうかを判断します。具体的な使い方は以下の通りです。
df.duplicated(subset=None, keep='first')
このうち、 df は複製するデータセット、subset は指定した列または行、デフォルトは None で、すべての列が判定されることを意味します。 keep パラメータの意味は、drop_duplicates メソッドの意味と同じです。
具体的な例:
上記のデータ セット df を引き続き使用すると仮定すると、duplicated メソッドを使用して各行が繰り返されるかどうかを判断できます:
df_duplicated = df.duplicated() print(df_duplicated)
実行結果は次のとおりです。
0 False 1 False 2 False 3 True 4 True 5 True dtype: bool
この結果から、返された Series の行 0、1、および 2 は False であり、これらの行が繰り返されていないことを示し、行 3、4、および 5 は True であり、これらの行が繰り返されていないことを示していることがわかります。行が重複しています。
3.drop_duplicates と重複メソッドのアプリケーション シナリオ
drop_duplicates と重複メソッドは、データ クリーニングとデータ分析で広く使用されています。一般的なアプリケーション シナリオは次のとおりです:
具体的な例:
複数の都市の販売記録を含む販売データ セット df があるとします。各都市の総売上高をカウントし、重複する都市を削除したいと考えています。これを実現するには、次のコードを使用します。
import pandas as pd df = pd.DataFrame({'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shanghai', 'Beijing'], 'Sales': [1000, 2000, 3000, 1500, 1200]}) df_drop_duplicates = df.drop_duplicates(subset='City') df_total_sales = df.groupby('City')['Sales'].sum() print(df_drop_duplicates) print(df_total_sales)
実行結果は次のとおりです。
City Sales 0 Beijing 1000 1 Shanghai 2000 2 Guangzhou 3000 Sales City Beijing 2200 Guangzhou 3000 Shanghai 3500
結果からわかるように、最初に、drop_duplicates メソッドを使用して重複する都市を削除しました。次に、groupby メソッドと sum メソッドを使用して、都市ごとの総売上高を計算しました。
結論:
この記事の分析を通じて、Pandas で一般的に使用される重複排除メソッド Drop_duplicates と Duplicated の使用法と適用シナリオを理解しました。これらの方法は、データ内の重複値を簡単に処理し、データ分析と処理の精度を確保するのに役立ちます。実際のアプリケーションでは、特定の問題に応じて適切な方法を選択し、それらを他の Pandas メソッドと組み合わせてデータのクリーニングと分析を行うことができます。
コード例:
import pandas as pd df = pd.DataFrame({'A': [1, 2, 3, 1, 2, 3], 'B': ['a', 'b', 'c', 'a', 'b', 'c']}) # 使用drop_duplicates方法去重 df_drop_duplicates = df.drop_duplicates() print(df_drop_duplicates) # 使用duplicated方法判断重复值 df_duplicated = df.duplicated() print(df_duplicated) # 应用场景示例 df = pd.DataFrame({'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shanghai', 'Beijing'], 'Sales': [1000, 2000, 3000, 1500, 1200]}) df_drop_duplicates = df.drop_duplicates(subset='City') df_total_sales = df.groupby('City')['Sales'].sum() print(df_drop_duplicates) print(df_total_sales)
上記のコードは Python 環境で実行され、その結果、重複排除されたデータ セットと総売上統計が出力されます。
参考文献:
以上がPandas を使用してデータ内の重複値を処理する方法: 重複排除方法の包括的な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。