시작하기무료로 시작하기

덴드로그램 미관 개선

덴드로그램을 만들었지만… 생각만큼 눈에 띄진 않네요!

dendextend 패키지는 가지(branch)에 색을 입히고 클러스터 윤곽을 표시해 주어, 보는 사람이 더 쉽게 이해하도록 도와줘요. dendextend는 덴드로그램 객체에서 동작하므로, hclust로 만든 계층적 클러스터를 as.dendrogram()으로 변환해야 합니다.

덴드로그램의 용어를 살펴보는 좋은 방법은 labels() 함수예요. 덴드로그램의 모든 용어를 출력합니다. 특정 가지를 강조하려면 branches_attr_by_labels()를 사용하세요. 먼저 덴드로그램 객체를 전달하고, 이어서 c("data", "camp")처럼 용어 벡터를 전달하세요. 마지막으로 "blue"처럼 색상을 추가합니다.

그래프를 만든 후에는 rect.dendrogram()으로 클러스터를 강조할 수 있어요. 각 클러스터를 둘러싸는 사각형이 추가됩니다. rect.dendrogram()의 첫 번째 인자는 덴드로그램이고, 그다음은 클러스터 개수(k)입니다. 또한 사각형 색을 지정하는 border 인자를 전달할 수 있어요(예: "green").

이 연습은 강의의 일부입니다

R로 배우는 Bag-of-Words 텍스트 마이닝

강의 보기

연습 안내

dendextend 패키지는 이미 로드되어 있고, tweets_dist로부터 생성한 계층적 클러스터 객체 hc가 준비되어 있어요.

  • hcas.dendrogram()을 적용해 덴드로그램 hcd를 생성하세요.
  • hcdlabels를 콘솔에 출력하세요.
  • branches_attr_by_labels()를 사용해 가지에 색을 입히세요. 세 가지 인자를 전달합니다: hcd 객체, c("marvin", "gaye"), 색상 "red". 결과를 hcd_colored에 할당하세요.
  • 덴드로그램 hcd_coloredplot()하고, main 인자를 사용해 제목 "Better Dendrogram"을 추가하세요.
  • rect.dendrogram()으로 그래프에 사각형을 추가하세요. 클러스터는 k = 2로 지정하고, border 색은 "grey50"로 하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Create hcd
___ <- ___(___)

# Print the labels in hcd
___(___)

# Change the branch color to red for "marvin" and "gaye"
___ <- ___(___, ___, ___)

# Plot hcd_colored
___(___, ___)

# Add cluster rectangles
___(___, ___, ___)
코드 편집 및 실행