모두 합쳐 보기: 텍스트 기반 덴드로그램
이제 배운 내용을 활용해 첫 번째 텍스트 기반 덴드로그램을 만들어 볼 시간이에요. 덴드로그램은 정보를 축약해 데이터의 의미를 파악하도록 도와줘요. 이는 평균이 모집단에 대해 뭔가를 알려주지만 모든 것을 말해주지는 않는 것과 비슷하죠. 둘 다 오해를 낳을 수 있어요. 텍스트의 경우 비논리적인 클러스터가 많이 생기지만, 가치 있는 클러스터도 나타날 수 있어요.
TDM과 DTM 객체의 특이한 점은 dist() 함수와 함께 사용하기 전에 반드시 as.matrix()로 행렬로 변환해야 한다는 거예요.
샤도네이 관련 트윗에서 소울 음악의 전설 Marvin Gaye가 워드 클라우드에 등장한 것을 보고 놀라셨을 수도 있어요. 덴드로그램에서도 같은 패턴이 잡히는지 확인해 보죠.
이 연습은 강의의 일부입니다
R로 배우는 Bag-of-Words 텍스트 마이닝
연습 안내
tweets_tdm에removeSparseTerms()를 적용해tweets_tdm2를 만드세요.sparse = 0.975를 사용하세요.tweets_tdm2에as.matrix()를 사용해 행렬 형태로 변환하고, 이를tdm_m으로 저장하세요.dist()함수를 사용해tdm_m의 거리를 계산하고tweets_dist를 만드세요.tweets_dist에hclust()를 적용해 계층적 군집 객체hc를 만드세요.plot()에hc를 전달해 덴드로그램을 그리세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Create tweets_tdm2
___ <- ___(___, ___)
# Create tdm_m
___ <- ___(___)
# Create tweets_dist
___ <- ___(___)
# Create hc
___ <- ___(___)
# Plot the dendrogram
___(___)