开始使用免费开始使用

巅峰对决!Amazon vs. Google 的正向评价

Amazon 的正向评价似乎常提到如 "good benefits" 之类的二元词组,而其负向评价则集中在 "workload" 和 "work-life balance" 等问题上。

相比之下,Google 的正向评价会提到 "great food"、"perks"、"smart people"、"fun culture" 等。其负向评价则讨论 "politics"、"getting big"、"bureaucracy" 和 "middle management"。

您决定绘制一个金字塔图,将 Amazon 和 Google 的正向评价对齐,这样就能比较二者共享的二元词组之间的差异。 我们已预加载数据框 all_tdm_df,包含 terms 以及对应的 AmazonProGooglePro 的二元词组频次。请使用该数据框,找出两个语料库之间共享的前 5 个二元词组。

本练习是课程的一部分

使用 R 的 Bag-of-Words 进行文本挖掘

查看课程

练习说明

  • 使用 dplyr 函数从 all_tdm_df 创建 common_words
    • AmazonPro 列使用 filter(),筛选非零值。
    • 同样对 GooglePro 列进行非零值筛选。
    • 然后使用 mutate() 新增一列 diff,其值为两个词频列的 abs(绝对)差。
  • common_words 通过管道传入 slice_max,依据 diff 列取前 5 个值,创建 top5_df。它会打印到控制台供您查看。
  • 使用 pyramid.plot 作图,依次传入 top5_df$AmazonProtop5_df$GooglePro,最后用 top5_df$terms 添加标签。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Filter to words in common and create an absolute diff column
common_words <- all_tdm_df %>% 
  filter(
    ___ != 0,
    ___ != 0
  ) %>%
  ___(diff = ___(___ - ___))

# Extract top 5 common bigrams
(top5_df <- common_words %>% ___(___, n = ___))

# Create the pyramid plot
pyramid.plot(top5_df$___, top5_df$___, 
             labels = top5_df$___, gap = 12, 
             top.labels = c("Amzn", "Pro Words", "Goog"), 
             main = "Words in Common", unit = NULL)
编辑并运行代码