TM 复习(II)
现在我们来创建一个文档-词项矩阵(Document Term Matrix,DTM)。在 DTM 中:
- 矩阵的每一行代表一篇文档。
- 每一列是一个唯一的词元。
- 矩阵中的值对应于某个文档的用词频率。
DTM 是许多"词袋"(bag of words)分析的基础。课程后面,您还会用到相关的词项-文档矩阵(Term Document Matrix,TDM)。它是转置后的结果,也就是说,列代表文档,行代表唯一词元。
在清洗过语料库(使用 clean_corpus())之后,您应该构建 DTM。为此,在语料对象上调用 DocumentTermMatrix()。
tm_dtm <- DocumentTermMatrix(tm_clean)
如果您需要更系统的复习,请查看课程 Text Mining with Bag-of-Words in R。希望这两个练习已经足以帮助您踏上情感分析之旅!
请注意:这些是来自 Twitter 的真实数据,因此可能包含粗口或其他冒犯性内容(本练习以及后续使用真实 Twitter 数据的练习都可能如此)。
本练习是课程的一部分
R 中的情感分析
练习说明
我们已经创建了一个名为 clean_text 的 VCorpus() 对象,包含 1000 条提到咖啡的推文。推文已按前述预处理步骤完成清洗,您的目标是基于它创建一个 DTM。
- 对
clean_text语料应用DocumentTermMatrix(),创建一个以词频为权重的 DTM,命名为tf_dtm。 - 使用
as.matrix()将DocumentTermMatrix()对象转换为普通矩阵。将新对象命名为tf_dtm_m。 - 使用
dim()检查矩阵的维度。 - 使用方括号索引查看矩阵的一个子集。
- 选择第 16 到 20 行,以及第 2975 到 2985 列。
- 记录单词 "working" 的频率值。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# clean_text is pre-defined
clean_text
# Create tf_dtm
tf_dtm <- ___
# Create tf_dtm_m
tf_dtm_m <- ___
# Dimensions of DTM matrix
___
# Subset part of tf_dtm_m for comparison
___[___, ___]