텍스트 마이닝
1.사전 설정하기
useNIADic()
## Backup was just finished!
## 1213109 words dictionary was built.
2.데이터 불러오기
hiphop <- readLines("e:/R_Project/hiphop.txt")
head(hiphop)
## [1] "\"보고 싶다" "이렇게 말하니까 더 보고 싶다"
## [3] "너희 사진을 보고 있어도" "보고 싶다"
## [5] "너무 야속한 시간" "나는 우리가 밉다"
3.특수문자 제거
hiphop <- str_replace_all(hiphop, "\\W", " ")
4.명사 추출하기
noun <- extractNoun(hiphop)
wordcount <- table(unlist(noun))
5. 사용된 단어 빈도표 만들기
df_word <- as.data.frame(wordcount,stringsAsFactors = F)
df_word <- rename(df_word,
word=Var1,
freq=Freq)
df_word <- filter(df_word,
nchar(word)>=2)
top20 <- df_word %>%
arrange(desc(freq)) %>%
head(20)
top20
## word freq
## 1 you 89
## 2 my 86
## 3 YAH 80
## 4 on 76
## 5 하나 75
## 6 오늘 51
## 7 and 49
## 8 사랑 49
## 9 like 48
## 10 우리 48
## 11 the 43
## 12 시간 39
## 13 love 38
## 14 to 38
## 15 we 36
## 16 it 33
## 17 em 32
## 18 not 32
## 19 역사 31
## 20 flex 30
6. 워드 클라우드 만들기
pal <- brewer.pal(8,"Dark2")
set.seed(1234)
wordcloud(words=df_word$word,
freq=df_word$freq,
min.freq=2,
max.words = 200,
random.order =F,
rot.per=.1,
scale=c(4,0.3),
colors=pal)
