본문 바로가기
R 프로그래밍/R basic

[R 그래픽스] 워드 클라우드(Word Cloud) 생성하기

by 찐남 2021. 10. 31.

워드 클라우드(Word Cloud)는 단어의 빈도수를 구름 형태로 표현하는 그래픽 기법입니다. 

 

통상적으로 단어의 크기는 빈도수에 비례하여 표현합니다.

 

워드 클라우드를 설명하는 여러 블로그를 보면,

 

한글 자연어 분석 패키지인 KoNLP(Korean Natural Language Processing)에서 시작합니다. 

 

하지만, 정작 워드 클라우드를 생성하기 위해서는 아래 2가지만 준비되면 그리기가 가능한 그래픽 기법입니다.

 




 

1. wordcloud 패키지 설치 

 

2. wordcloud 표현을 위한 2개의 변수(단어, 빈도수)로 구성된 Data.frame

 

 


 

KoNLP패키지는 결국 2번의 데이터 세트를 생성하기 위해 중간 과정에서 필요한 패키지입니다.

 

KoNLP 패키지는 다음 포스팅에서 자세히 다루도록 하겠습니다.

 

 

그럼 실습을 통해 wordcloud를 생성해 보겠습니다. 

 

Step 0) 우선, 아래 데이터 세트를 실습 PC에 저장합니다.

 

fruit_vegetable.csv
0.00MB

                                   (예제 데이터: 인터넷에서 검색된 과일 및 야채 이름과 검색 수)

 

Step 1) 필요 패키지 설치 및 로딩

 

install.packages("wordcloud")   # wordcloud 패키지 설치
library("wordcloud") # wordcloud 패키지 로딩

library("RColorBrewer")
# 주제별 맵을 위해 멋지게 보이는 색상 팔레트 생성 패키지
# 글자 색깔 표현에 필요한 패키지 로딩(별도 설치할 필요가 없는 패키지)

 

Step 2) Step0에서 다운로드한 실습 파일을 R data.frame으로 변환

 

word_cloud <- read.csv("fruit_vegetable.csv", header = T, encoding = "UTF-8")
dim(word_cloud) # 105 2
head(word_cloud)

 

wordcloud를 만들기 위한 데이터 세트의 변수명을 변경함

names(word_cloud) <- c("title", "count")

 

Step 3) wordcloud 생성

 

color <- brewer.pal(8, "Dark2") # 단어를 표현할 색상 세팅

# 별도 그림 파일로 생성하기 위한 파일명, 너비, 높이 세팅
png(filename="wordcloud.png",width=1000,height=800) 

wordcloud(words = word_cloud$title,    # 데이터 프레임에서 단어를 나타내는 변수 지정
____________freq = word_cloud$count,    # 데이터 프레임에서 빈도를 나타내는 변수 지정
____________min.freq = 1,                     # 최소 단어의 빈도 세팅
____________max.words = 105,               # wordcloud에 표현할 단어 수 세팅
____________random.order = F,              # 빈도가 많은 단어를 중앙에 세팅
____________rot.per = .1,                      # 90도 회전하기 위한 단어 비율 세팅
____________scale = c(4, 0.3),                # 단어 크기의 범위를 나타내는 길이가 2인 벡터
____________colors = color)                  # 가장 자주 발생하는 단어부터 색상 지정

 dev.off() # 그림 파일 저장

 

멋진 워드 클라우드가 생성되었습니다~!!!!!



반응형

댓글