-
term-topic probabilityR/TextMining 2019. 11. 4. 22:20
install.packages("topicmodels")
install.packages("tidytext")
install.packages("broom")
install.packages("tidyverse")
library(topicmodels)
library(tidytext)
library(broom)
library(tidyverse)data("AssociatedPress")
# 2개의 topic LDA 분석
ap_lda <- topicmodels::LDA(AssociatedPress, k = 2, control = list(seed = 1234))# broom 패키지에서 제공하는 tidy 형태로 변경
ap_topics <- broom::tidy(ap_lda, matrix = "beta")ap_topics %>%
dplyr::group_by(topic) %>%
dplyr::top_n(n = 10, wt = beta) %>%
dplyr::ungroup() %>%
dplyr::arrange(topic, desc(beta)) %>%
dplyr::mutate(term = reorder(term, beta)) %>%
ggplot2::ggplot(mapping = aes(x = term, y = beta, fill = factor(topic))) +
ggplot2::geom_col(show.legend = FALSE) +
ggplot2::facet_wrap(~ topic, scales = "free") +
ggplot2::coord_flip()ap_topics %>%
dplyr::mutate(topic = paste0("topic", topic)) %>%
tidyr::spread(topic, beta) %>%
dplyr::filter(topic1 > 0.001 | topic2 > 0.001) %>%
dplyr::mutate(log_ratio = log2(topic2/topic1)) %>%
dplyr::arrange(desc(log_ratio)) %>%
ggplot2::ggplot(mapping = aes(x = reorder(term, -log_ratio), y = log_ratio)) +
ggplot2::geom_col(show.legend = FALSE) +
ggplot2::coord_flip()[출처] R로 배우는 텍스트마이닝, 줄리아 실기/데이비드 로빈스 지음, 박진수 옮김, 제이펍, p107 ~ 111
'R > TextMining' 카테고리의 다른 글
문재인 대통령 취임사의 워드 클라우드 (2) (0) 2019.11.08 문재인 대통령 취임사의 워드 클라우드 (0) 2019.11.08 DFM 객체 정돈하기 (0) 2019.10.30 긍정 정서나 부정 정서에 가장 큰 기여를 한 단어들 (0) 2019.10.30 R and BERT (0) 2019.10.29