@@ -11,7 +11,7 @@ setwd("/Users/ishida/Download/TextMining")# など
11
11
setwd(" /home/ishida/Dropbox/R/Morikita/Version2/" )# など
12
12
13
13
14
- # ## l9 .1 解析の準備
14
+ # ## 9 .1 解析の準備
15
15
library(RMeCab )
16
16
# # Windowsの場合は以下の "data/prime/utf" を "data/prime/sjis" にするなど
17
17
# # 自身の作業環境にあわせて適宜変更
@@ -26,14 +26,13 @@ library(dplyr)
26
26
library(magrittr )
27
27
# # 列名を短縮化する
28
28
colnames(prime ) %<> % str_replace(" _general-policy-speech.txt" , " " )
29
- colnames(prime ) %<> % str_replace(" (\\ d{4})\\ d{4}_(\\ d{3})" , " \\ 1_\\ 2" )
29
+ colnames(prime ) %<> % str_replace(" (\\ d{4})\\ d{4}_(\\ d{1, 3})" , " \\ 1_\\ 2" )
30
30
31
31
32
32
# ## 9.3 所信表明演説のクラスター分析
33
33
hc <- prime %> % t %> % dist %> % hclust(" ward.D2" )
34
34
35
- #
36
- install.packages(" ggdendro" )
35
+ # install.packages("ggdendro")
37
36
38
37
library(ggdendro )
39
38
ggdendrogram(hc , rotate = TRUE )
@@ -73,7 +72,7 @@ TD_svd$v
73
72
t(TD_svd $ u [, 1 : 3 ]) %*% TD
74
73
75
74
# ## 9.6 潜在的意味インデキシングによる分類
76
- install.packages(" rgl" )
75
+ # install.packages("rgl")
77
76
78
77
prime.svd <- svd(prime )
79
78
prime2 <- t(prime.svd $ u [, 1 : 3 ]) %*% prime
@@ -110,7 +109,7 @@ vignette("rgl")
110
109
111
110
112
111
# ## 9.7 トピックモデル
113
- install.packages(c(" topicmodels" ," lda" ))
112
+ # install.packages(c("topicmodels","lda"))
114
113
115
114
library(RMeCab )
116
115
@@ -133,15 +132,16 @@ prime3 <- prime2 %>% select(-c(TERM:POS2))
133
132
rownames(prime3 ) <- prime2 $ TERM
134
133
# # 列名は短縮化
135
134
colnames(prime3 ) %<> % str_replace(" _general-policy-speech.txt" , " " )
136
- colnames(prime3 ) %<> % str_replace(" (\\ d{4})\\ d{4}_(\\ d{3})" , " \\ 1_\\ 2" )
135
+ colnames(prime3 ) %<> % str_replace(" (\\ d{4})\\ d{4}_(\\ d{1, 3})" , " \\ 1_\\ 2" )
137
136
137
+ # # ターム文書行列を作成
138
138
library(tm )
139
139
prime3a <- prime3 %> % t() %> % as.DocumentTermMatrix(weighting = weightTf )
140
140
141
141
# ## 9.7.1 トピックモデルによるモデル推定
142
142
library(topicmodels )
143
143
# # トピックの数を指定
144
- K <- 5
144
+ K <- 5 1
145
145
res1 <- prime3a %> % LDA(K )
146
146
147
147
terms(res1 )
@@ -192,6 +192,15 @@ ministersDF <- as.data.frame(ministers) %>%
192
192
mutate(num = paste0(" No" , c(64 , 74 , 77 , 80 )))
193
193
ministersDF
194
194
195
+ # # 行列をデータフレームに変換し列名を設定
196
+ ministersDF <- as.data.frame(ministers ) %> %
197
+ set_names(paste0(" topic" , 1 : 5 )) %> %
198
+ # # num という列を追加
199
+ mutate(num = c(" 64:小泉" , " 74:鳩山" , " 77:野田" , " 80:安倍" ))
200
+
201
+ ministersDF
202
+
203
+
195
204
# install.packages("tidyr")
196
205
197
206
library(tidyr )
@@ -207,6 +216,6 @@ ministersDF %>% ggplot(aes(x = topic, y = props, fill = num)) + geom_bar(s
207
216
# 3行続けて実行することで画像ファイルが作成されます
208
217
# RStudio 右のFilesタブで画像ファイルをクリックすることで、適切なビューワー が立ちあがります
209
218
cairo_pdf(file = " ministersDF.pdf" , family = " JP1" )# Mac の場合は family = "HiraKakuProN-W3" と変えてください
210
- x
219
+
211
220
dev.off()
212
221
0 commit comments