자격증

[Adp 실기 기출 풀이] 26회 - 군집분석 결과 평가 및 활용

돌돌55 2023. 3. 4. 17:37

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

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

 

 

문제

2-1 군집별로 어떤 의미가 있는지 비즈니스적인 판단을 해라
2-2 군집분류가 잘 되었는지 평가하라
2-3 31412 고객에 Knn 기법을 이용하여 추천할 상품을 제시해라

 

 

풀이

2-1 군집의 개수를 보면 우리가 쓰는 타겟이 몇개의 군집으로 나눌 수 있는지 파악할 수 있다.

또는 군집의 비율을 보아 한 군집에 쏠렸으면 그쪽 군집에 타겟팅하고, 아니면 다른 방법으로 타겟팅해서 마케팅을 해아함

 

2-2 

방법 1. 실루엣 계수로 판단을 한다. 

cluster :: silhouette 함수

 

방법 2. 같은 군집에 있는 데이터 2개를 뽑아서 데이터를 비교해본다. 또는 다른 군집에 있는 데이터를 2개 뽑아서 비교방법 2.1 군집별 summary 또는 histogram을 그려서 값을 비교한다.

 

방법 3. 산점도를 그려서 비교한다. 

 

2-3

knn의 기준을 정한다. 정할 기준은 가까운 몇개의 데이터를 쓸 것인지. 데이터 분석의 일관성을 위해 앞 문제에서 기준으로 삼았던 k 갯수로 가장 가까운 데이터를 찾음

 

가장 가까운 데이터 찾는방법순서 1. 범주형은 거리 구하기 곤란하니 이산형 데이터로만 진행(변수를 뽑음) ex) df[ ,c(1,2,5,7)순서 2. 31412 번과 다른 사람과의 거리를 각각 구함(유클리드 거리로 계산)sample # iris 데이터에서 1번과 나머지 data의 거리를 계산dist_list<-c()
dist_list[1]<-0
for(i in 2:dim(iris)[1]){
  
dist_list[i]<-dist(iris[c(1,i),-5], method = "euclidean") # class 데이터 삭제
}

 

순서 3. 거리를 오름차순으로 정리 및 분석

 

order(dist_dist)로 자신을 제외하고 가장 가까운 1~3등을 추출해서 데이터 화(iris[c(29,26,40),]), 모두 setosa 이므로 1번 데이터도 setosa로 유추

 

이와 같이 추출된 데이터의 상품을 보고 공통되거나 유사한 상품을 알려주면 됨

 

주의할 점 : 변수별 단위에 따라 달라질 수 있으므로 표준화를 시켜주고 하는게 바람직함(군집을 만들때부터)

scale 함수를 써주면 좋음