【发布时间】:2015-06-03 10:57:59
【问题描述】:
我已经编写了代码以使用“tm”包在 R 中生成文档术语矩阵。
现在,我必须只为选定的命名列选择矩阵中的频率值。所以我想根据术语列表对矩阵进行子集化。如果任何术语(如 terms = c('medium', 'high', 'low'))在文档术语矩阵中以列的形式出现,我只希望这些列出现在输出矩阵中。
方法是什么,R中的代码是如何编写的?
我查看了文档术语矩阵,它包含 i、j 和 v 的值。
【问题讨论】:
我已经编写了代码以使用“tm”包在 R 中生成文档术语矩阵。
现在,我必须只为选定的命名列选择矩阵中的频率值。所以我想根据术语列表对矩阵进行子集化。如果任何术语(如 terms = c('medium', 'high', 'low'))在文档术语矩阵中以列的形式出现,我只希望这些列出现在输出矩阵中。
方法是什么,R中的代码是如何编写的?
我查看了文档术语矩阵,它包含 i、j 和 v 的值。
【问题讨论】:
你可以这样做
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
【讨论】: