자격증

[Adp 실기 기출 풀이] 26회 - 머신러닝 전처리 및 군집분석

돌돌55 2023. 3. 4. 00:11

문제는 멋쟁이천재사자님의 내용을 참고하였습니다.

https://it-freelancer.tistory.com/293

 

[Adp 실기 기출 풀이] 26회 - 머신러닝 전처리 및 군집분석

지난 5월 21일 25회 ADP 필기를 합격했고, 9월 25일 첫 번째 실기를 보았습니다. 필기 유예 기간 끝날 때까지 도전할 계획이며, 11월 26일 27회 실기를 준비하고 있습니다. 제 기억과 다른 후기에서 확

it-freelancer.tistory.com

 

1-1 결측치를 식별하고 처리해라
1-2 이상치를 제거하고 제거후에 이상치 제거가 잘 되었는지 통계적으로 제시하라

1-3 k-means PAM 등의 기법을 이용하여 군집분석해라

 

풀이

1-1

summary 함수를 통해 결측치 식별

 

또는 colSums와 is.na를 이용해 식별

 

#sample code

df <- data.frame(col1 = c(1, 2, 3, NA, 4, 5,6,7),
                 col2 = c(6, 7, 8, 9, NA, 10,NA,NA),
                 col3 = c(11, NA, 12, NA, 14, 15, 16,17))
na.sums <- colSums(is.na(df))
na.sums

 

결측치를 처리하는 방법

1. 삭제 : 간단함. 그러나 데이터 손실이 있을 수 있음. 클래스가 적은 데이터에서 데이터가 삭제된다면 정보량 손실이 너무 크기 때문에 등 다른 요소를 고려해야함

2. 평균값 : 평균, 중앙값, 최빈값으로 바꿈

3. 유사도 : 결측 데이터와 가장 유사한 데이터로 치환

 

처리 방법(코드)

1. 삭제 : na.omit

2. mean, median, summary 함수를 통해 값을 보고 치환해주면 됨

df[is.na(df$col1),1]<-mean(na.omit(df$col1))

3. 결측치가 있는 변수를 빼고 거리 측정해서 가장 가까운 데이터와 동일하게 변경

 

 

1-2

이상치 판단법

1. boxplot 등 그림을 그려서 판단

2. dbscan으로 군집을 그린 뒤 군집과 멀리있는 데이터를 이상치로 판단

 

 

1-3

help 함수로 어느정도 풀 수 있을듯

 

군집분석 해석

cluster 별로 어떤 특징이 있는지 서술해주기

가장 많은 데이터가 포함된 곳은 (여기)인데 구매 횟수가 많았다. 등등

 

추가 쓸만한 내용

군집 개수는 실루엣 silhouette 통계량으로 가장 적정한 군집 수를 찾을 수 있음