Pandas: 여러 열에서 중복 항목을 제거하는 방법


다음 방법을 사용하여 Pandas DataFrame의 여러 열에서 중복 행을 제거할 수 있습니다.

방법 1: 모든 열에서 중복 항목 제거

 df. drop_duplicates ()

방법 2: 특정 열의 중복 항목 제거

 df. drop_duplicates ([' column1 ',' column3 '])

다음 예에서는 다음 pandas DataFrame에서 실제로 각 메서드를 사용하는 방법을 보여줍니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' region ': ['East', 'East', 'East', 'West', 'West', 'West'],
                   ' store ': [1, 1, 2, 1, 2, 2],
                   ' sales ': [5, 5, 7, 9, 12, 8]})

#view DataFrame
print (df)

  region store sales
0 East 1 5
1 East 1 5
2 East 2 7
3 West 1 9
4 West 2 12
5 West 2 8

예시 1: 모든 열에서 중복 항목 제거

다음 코드는 모든 열에 중복된 값이 있는 행을 제거하는 방법을 보여줍니다.

 #drop rows that have duplicate values across all columns
df. drop_duplicates ()

	region store sales
0 East 1 5
2 East 2 7
3 West 1 9
4 West 2 12
5 West 2 8

인덱스 위치 1의 행은 인덱스 위치 0의 행과 모든 열의 값이 동일하므로 DataFrame에서 제거되었습니다.

기본적으로 pandas는 첫 번째 줄을 중복으로 유지합니다. 그러나 keep 인수를 사용하여 마지막 중복 라인을 유지하도록 지정할 수 있습니다.

 #drop rows that have duplicate values across all columns (keep last duplicate)
df. drop_duplicates (keep=' last ')

	region store sales
1 East 1 5
2 East 2 7
3 West 1 9
4 West 2 12
5 West 2 8

예시 2: 특정 열의 중복 항목 제거

다음 코드를 사용하여 지역매장 열에서만 중복 값이 있는 행을 제거할 수 있습니다.

 #drop rows that have duplicate values across region and store columns
df. drop_duplicates ([' region ',' store '])

	region store sales
0 East 1 5
2 East 2 7
3 West 1 9
4 West 2 12

RegionStore 열에 중복 값이 포함되어 있기 때문에 전체적으로 두 개의 행이 DataFrame에서 제거되었습니다.

참고 : drop_duplicates() 함수에 대한 전체 문서는 여기에서 찾을 수 있습니다.

추가 리소스

다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

팬더에서 중복을 찾는 방법
Pandas에서 중복 열을 제거하는 방법
Pandas DataFrame에서 첫 번째 행을 제거하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다