ComeçarComece de graça

Confronto! Avaliações positivas: Amazon vs. Google

As avaliações positivas da Amazon parecem mencionar bigramas como "good benefits", enquanto as negativas se concentram em bigramas como questões de "workload" e "work-life balance".

Em contraste, as avaliações positivas do Google mencionam "great food", "perks", "smart people" e "fun culture", entre outras coisas. As avaliações negativas do Google discutem "politics", "getting big", "bureaucracy" e "middle management".

Você decidiu fazer um gráfico em pirâmide alinhando as avaliações positivas da Amazon e do Google para comparar as diferenças entre quaisquer bigramas em comum. Pré-carregamos um data frame, all_tdm_df, composto por terms e as frequências de bigramas correspondentes AmazonPro e GooglePro. Usando esse data frame, você vai identificar os 5 principais bigramas compartilhados entre os dois corpora.

Este exercício faz parte do curso

Mineração de Texto com Bag-of-Words em R

Ver curso

Instruções do exercício

  • Crie common_words a partir de all_tdm_df usando funções do dplyr.
    • Faça filter() na coluna AmazonPro para valores diferentes de zero.
    • Da mesma forma, filtre a coluna GooglePro para valores diferentes de zero.
    • Em seguida, use mutate() para criar uma nova coluna, diff, que é a diferença absoluta (abs) entre as colunas de frequência dos termos.
  • Encaminhe (pipe) common_words para slice_max para criar top5_df, referenciando a coluna diff e os 5 maiores valores. Ele será impresso no seu console para revisão.
  • Crie um pyramid.plot passando top5_df$AmazonPro, depois top5_df$GooglePro e, por fim, adicione os rótulos com top5_df$terms.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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)
Editar e executar o código