2017-11-04 27 views
-1

저는 R과 멍청한 사람입니다. 일부 데이터 샘플에서 클러스터링을 시도하고 있습니다. 내가R - DBSCAN fviz_cluster - dim1과 dim2를 사용하여 elmeents의 좌표를 얻습니다.

res.pca <- PCA(df, 
       ncp = 5, # nb composantes principales. 
       graph = TRUE, 
       ) 

하는 PCA을 시도하고 나는이 대단한

res.pca$ind 

사용하여 새 좌표 전체 요소 목록을 얻을 수 있습니다. PCA로 2 축을 사용하면 정보가 으로 완벽하게 작동합니다. 한 축에는 80 %의 변동성이 있고 두 번째 축에는 10 % 이상의 변동성이 있습니다. 나는 30 개의 변수를 가지고 있다는 점을 고려하면 결과가 매우 자랑 스럽습니다 ... 그리고 End에서 PCA는 암시 적으로 2 차원으로 충분하다고 말합니다.

이러한 데이터를 계속 작업하면서 DBSCAN 클러스터링 방법을 시도했습니다. FPC :: dbscan 라이브러리 (factoextra)

db <- fpc::dbscan(df, eps = 22, MinPts = 3) 

및 dbscan을하고, 두 차원 디스플레이 말한다 fviz_cluster을 사용하여 클러스터를 그래프 후 : 1 축 및 2 축에 6.7 %에서 92.8 % !! (2 축으로 설명 된 전체 분산의 99 % 이상!

요컨대 DBSCAN은 PCA보다 나은 것으로 보이는 30 가지 변수 데이터를 변환했습니다 .DBSCAN의 전체 클러스터링은 데이터 하지만 사용 된 변환은 절대적으로 뛰어납니다.

제 문제는 새로운 좌표를 사용하고 싶습니다 ... 그러나 현재로서는 ... 볼 수있는 유일한 액세스 변수 : db $ cluster, db $ eps, db $ Minpts, db $ isseed.

그러나 일부 데이터에 액세스 할 수있는 것으로 의심됩니다. fviz_cluster가 데이터를 표시 할 수있는 방법 .

아이디어가 있으십니까?

답변

1

투영은 dbscan에 의해 수행되지 않습니다. fviz_cluster은 데이터에서 stats::prcomp을 통해 얻은 처음 두 구성 요소를 사용합니다.

+0

감사합니다. 나는 그것을 확인할 것입니다. –