11. 데이터 사전처리 - 중복데이터

김동웅·2021년 8월 28일
0

Pandas with python

목록 보기
11/23

데이터프레임 에서 각 행은 분석 대상이 갖고 있는 모든 속성에 대한 관측값을 뜻한다. 하나의 데이터셋에서 동일한 관측값이 2개 이상 중복되는 경우 동일한 대상이 중복으로 존재하는 것이므로 분석 결과를 왜곡하기 때문에 중복 데이터를 찾아서 삭제해야 한다.

1. 중복데이터 확인

동일한 관측값이 중복되는지 여부, 즉 행의 레코드가 중복되는지 여부를 확인하려면 duplicated() 메소드를 이용해야한다.

  • 전에 나온 행들과 비교하여 중복되는 행이면 True를 반환
    처음나오는 행이면 False 반환

2. 중복데이터 제거

  • drop_duplicates() 메소드 사용
  • 중복되는 행을 제거하고 고유한 관측값을 가진 행들만 남긴다.
import pandas as pd

df = pd.DataFrame({    'c1': ['a','a','b','a','b'],
		 	'c2' : [1,1,1,2,2],
            		'c3' : [1,1,2,2,2]
            	  })
             
             
print(df)
print('\n')

df2 = df.drop_duplicates()
print(df2)

실행결과

  c1  c2  c3
0  a   1   1
1  a   1   1
2  b   1   2
3  a   2   2
4  b   2   2

  c1  c2  c3
0  a   1   1
2  b   1   2
3  a   2   2
4  b   2   2
  • drop_duplicates() 메소드의 subset옵션에 '열이름의 리스트'를 전달할 수 있다.
    데이터의 중복여부를 판단할때, subset 옵션에 해당하는 열을 기준으로 판단한다.

0개의 댓글