Pandas で重複する列を削除する方法 (例あり)


次の基本構文を使用して、パンダの重複列を削除できます。

 df. T. drop_duplicates (). T

次の例は、この構文を実際に使用する方法を示しています。

例: Pandas で重複する列を削除する

次のパンダ データフレームがあるとします。

 import pandas as pd

#create DataFrame with duplicate columns
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

df. columns = ['team', 'points', 'points', 'rebounds']

#view DataFrame
df

	team points points rebounds
0 A 25 25 11
1 A 12 12 8
2 A 15 15 10
3 A 14 14 6
4 B 19 19 6
5 B 23 23 5
6 B 25 25 9
7 B 29 29 12

次のコードを使用して、重複した「ポイント」列を削除できます。

 #remove duplicate columns
df. T. drop_duplicates (). T

team points rebounds
0 to 25 11
1 to 12 8
2 to 15 10
3 to 14 6
4 B 19 6
5 B 23 5
6 B 25 9
7 B 29 12

「ポイント」列が削除され、他のすべての列がデータフレームに残っていることに注意してください。

このコードは、列の名前が異なっていても、同じ値が含まれている場合でも、重複する列を削除することにも注目してください。

たとえば、次の pandas DataFrame があるとします。

 import pandas as pd

#create DataFrame with duplicate columns
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' points2 ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
df

	team points points2 rebounds
0 A 25 25 11
1 A 12 12 8
2 A 15 15 10
3 A 14 14 6
4 B 19 19 6
5 B 23 23 5
6 B 25 25 9
7 B 29 29 12

「points」列と「points2」列には同じ値が含まれていることに注意してください。

次のコードを使用して、重複する ‘points2’ 列を削除できます。

 #remove duplicate columns
df. T. drop_duplicates (). T

team points rebounds
0 to 25 11
1 to 12 8
2 to 15 10
3 to 14 6
4 B 19 6
5 B 23 5
6 B 25 9
7 B 29 12

追加リソース

次のチュートリアルでは、パンダで他の一般的な機能を実行する方法を説明します。

Pandas DataFrame の重複行を削除する方法
Pandasで列を削除する方法
Pandas で列を除外する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です