创建一个整洁文本 Tibble!
既然您已经学习了整洁原则,这段代码将帮助您把数据整理为一个 tibble,便于您在 tidyverse 中继续处理!
之前您学到,对 TermDocumentMatrix() 对象应用 tidy() 会把 TDM 转换为 tibble。本练习中,您将直接从名为 comments 的评论列创建词级数据。
首先使用 unnest_tokens() 将文本转为小写,并把评论分词为单词。
有时保留语料中每个分组的原始词序很有用。为此,请使用 mutate()。在 mutate() 中,您将使用 seq_along() 创建从 1 到对象长度的序列。这样就能按原始书写顺序记录词序。
在 tm 包中,您会使用 removeWords() 删除停用词。在 tidyverse 中,您需要先载入停用词词典,然后在整洁文本数据框与停用词之间应用 anti_join()。
本练习是课程的一部分
R 中的情感分析
练习说明
- 使用管道(
%>%)将原始评论对象bos_reviews传给unnest_tokens()来创建tidy_reviews。传入新列名word,并声明comments列。请记住,在 tidyverse 中无需使用$或引号。 - 以整洁方式创建新变量!将
tidy_reviews通过管道传给group_by,按id列分组。然后再%>%到mutate()。在 mutate 中创建新变量original_word_order,其值为seq_along(word)。 - 打印 tibble
tidy_reviews。 - 使用
data("stop_words")将预置的 "SMART" 停用词载入您的 R 会话。 - 使用
%>%将原始的tidy_reviews传给anti_join()来覆盖式更新tidy_reviews。在anti_join()中传入预定义的stop_words词典。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Vector to tibble
tidy_reviews <- bos_reviews %>%
___(___, ___)
# Group by and mutate
tidy_reviews <- tidy_reviews %>%
___(___) %>%
___(original_word_order = ___(___))
# Quick review
___
# Load stopwords
___
# Perform anti-join
tidy_reviews_without_stopwords <- tidy_reviews %>%
___(___)