본문 바로가기
자격증/빅데이터분석기사

빅데이터분석기사 실기 1과목 실기 데이터 결측치, 이상치, 중복값 처리

by goemgoem-i 2024. 11. 14.
반응형
 

빅데이터분석기사 실기 1과목 데이터산포도 분산, 표준편차, iqr, 절댓값 , 최대최소, 합계

지난 블로그에 이어서 산포도를 나타내는 함수들에 대해서 연습해볼 예정이다  빅데이터분석기사 실기 1과목 head, info, describe, shape, dtypes, astype, 최소값/최대값/최빈값 정리 캐빅데이터분석가

toonovel.tistory.com

(이전에 작성한 개념)

 

 

이번에는 데이터 결측치 / 이상치 / 중복값을 확인하고 처리하는 과정을 진행하겠다

이전 1과목 실기 파트에서 연습했던 데이터 셋은 kaggle의 "web page phishing detection dataset" 을 사용했지만https://www.kaggle.com/datasets/shashwatwork/web-page-phishing-detection-dataset

 

Web page Phishing Detection Dataset

Detect Phishing in Web Pages

www.kaggle.com

해당 데이터 셋은 현재 결측치가 없기 때문에 titanic 자료도 같이 활용해서 진행해보겠다

 

df.isnull().sum()
결측치 개수 확인

 

결측치 개수를 확인한 과정이고 phishing 데이터는 결측치가 없는걸 확인할 수 있다

 

결측치가 없기 때문에 titanic 데이터를 불러오고 

 

다시 isnull().sum() 을 해주면

age 177개의 결측값

deck 688개의 결측값이

embark_town 2개의 결측값을 발견할 수 있다

 

 

 

 

 

결측치 처리 방법 : 평균값과 중앙값으로 대체

 

df['변수명'] = df['변수명'].fillna(대체명)

 

 

 

 

이상치 처리 방법 : 표준화  z = (기본값 - 평균) / 분산
 이상치 = iqr을 벗어나는 부분 q1과 q3사이에 있지 않은 값 

문제에는 안나오지만 이상치 값을 한눈에 볼 수 있음

 

 

 

q3 는 0.75 / q1은 0.25

 

 

 

 

조건을 적용한 df를 보고 싶다면 df = 으로 실제 데이터에 적용

조건은 df[] 꼭 해주기 -> df[ 조건 ] 

 

이상치는  q3 + 1.5*iqr 이상인 값들 q1+1.5*iqr 이하인 값들임

upper와 lower 쓸 때 부호 주의하기 

 

 

** 표준화 적용하기 z =  (기본값 - 평균) / 분산 **

표준화 구하고 개수 구하기

 

표준화 z 는 3 초과하거나 -3 미만이면 이상치로 처리

 

 

중복값 제거

 

df1 = df1.drop_duplicates()

 

반응형