2014-04-27 2 views
0

큰 데이터 파일에 Kmeans 클러스터링 알고리즘을위한 mapreduce 프로그램을 작성 중입니다. 각 관찰은 범주 형 변수와 숫자 형 변수를 모두 포함하는 열로 구성됩니다. Kmeans의 경우 거리 계산에 범주 형 변수를 포함하는 것은 적합하지 않습니다. 따라서 우리는 범주 항목을 사용하여 열을 필터링해야합니다.카테고리 변수를 다루는 KMeans

내 질문에 : 문자로 항목을 필터링하는 것은 쉽지만 열에 숫자 만 있지만 범주 (예 : 우편 번호, ID)로 처리하면 어떻게 될까요?

감사합니다.

답변

0

모든 범주 형 변수를 제거하는 것은 아마도 방법이 아닙니다. 데이터 세트를 수치 데이터 세트로 변환하려고 시도 했습니까? 예를 들면 다음과 같습니다 :

3 가지 범주 (검정, 흰색 및 파랑)를 포함하는 범주 형 변수 a (색상이라고 말합니다)가 주어지면 데이터 세트의 a를 세 개의 새 이진 변수로 바꿀 수 있습니다 (a_1, a_2, a_3). 주어진 개체의 경우 이러한 새 이진 변수 중 하나만 하나와 같고 다른 모든 변수는 0이어야합니다. 개체가 = 검정 인 경우 a_1 = 1, a_2 = 0, a_3 = 0입니다.

여전히 이러한 새로운 변수를 표준화해야합니다. 다른 방법이 있습니다 ... a_1 = a_1-mean (a_1) (빈도)을 시도해보십시오.