我已经编写了代码,使用' tm'来生成R中的文档术语矩阵。包。
现在,我必须仅为选定的命名列选择矩阵中的频率值。所以我想根据术语列表对矩阵进行子集化。如果任何条款(例如条款= c('媒体','高','低'))作为文档术语矩阵中的列出现,我只希望那些列出现在输出矩阵中。
方法是什么,R中的代码是如何为此编写的?
我查看了文档术语矩阵,它包含i,j和v的值。
答案 0 :(得分:4)
你可以这样做
library(tm)
data("crude")
dtm <- DocumentTermMatrix(crude)
terms <- c('medium', 'high', 'low')
inspect(dtm[1:5, intersect(colnames(dtm), terms)])
# <<DocumentTermMatrix (documents: 5, terms: 2)>>
# Non-/sparse entries: 0/10
# Sparsity : 100%
# Maximal term length: 4
# Weighting : term frequency (tf)
#
# Terms
# Docs high low
# 127 0 0
# 144 0 0
# 191 0 0
# 194 0 0
# 211 0 0