二元词组如何影响词云?
既然您已经创建了一个二元词组 DTM,就可以检查它并重新生成词云。新的分词方法不仅会影响矩阵本身,也会影响基于这些矩阵的可视化或建模。
还记得在霞多丽(chardonnay)的词云中,"Marvin" 和 "Gaye" 是两个独立的词吗?使用二元词组时,分词会抓取所有的两词组合。请观察本练习中词云会发生什么变化。
本练习使用 stringr 中的 str_subset。请注意,DataCamp 的其他课程会更详细讲解正则表达式。提醒一下,正则表达式 ^ 匹配的是本练习二元词组中字符串的"起始"位置。
本练习是课程的一部分
使用 R 的 Bag-of-Words 进行文本挖掘
练习说明
关于 chardonnay 的推文已清洗并整理为名为 bigram_dtm 的 DTM。
- 将
bigram_dtm转为矩阵,创建bigram_dtm_m。 - 对
bigram_dtm_m应用colSums()获得词频,创建对象freq。 - 用
names(freq)提取词组(字符向量),并将结果赋给bi_words。 - 将
bi_words传入str_subset(),匹配模式为"^marvin",以查看所有以 "marvin" 开头的二元词组。 - 绘制一个简单的
wordcloud(),将bi_words、freq和max.words = 15传入函数。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create bigram_dtm_m
___ <- ___(___)
# Create freq
___ <- ___(___)
# Create bi_words
___ <- ___(___)
# Examine part of bi_words
___(___, ___)
# Plot a word cloud
___(___, ___, ___)