記事を 2 つのカテゴリに分類したいので、記事の n-gram マトリックスでランダムフォレストを実行します。RF の結果、重要な変数のリストを受け取りました。
ここで、選択した最初の n 個の機能に対してのみランダム フォレストを実行し、同じ機能を使用して新しい分類を予測したいと考えています。そのためには、(RF からの) 最も重要な変数に対してのみ dfm を作成する必要があります。これらの重要な変数のリストから辞書を作成するにはどうすればよいですか?
コードの関連部分...辞書を作成した後、エントリは1つしかありません。それを適切に作成する方法は?
forestModel <-
randomForest(x = as.matrix(myStemMat),y=as.factor(classVect),
ntree = 1000 )
impVariables <-
data.frame(important = as.matrix(importance(forestModel)))
impVariables <-
impVariables %>% mutate(impVar = row.names(impVariables)) %>%
arrange(desc(MeanDecreaseGini)) %>%
top_n(1000, wt = MeanDecreaseGini) %>%
select(impVar) %>% as.list() %>% dictionary()
myStemMat <-
dfm(
mycorpus,
dictionary=impVariables,
# remove = stopwordsPL,
stem = TRUE,
remove_punct = TRUE,
ngrams=c(1,2)
)
dfm()
簡単に言えば、文字列、単語、n-gram のリストがある場合、用語マトリックスを生成する関数で使用できるように辞書を作成するにはどうすればよいですか?
これは、完全なコード「再現可能な例」とそれが使用するデータへのリンクです。https://www.dropbox.com/s/3oe1tcfcaauer0wf/text_data.zip?dl=0