開始使用免費開始

建立 Tidy Text Tibble!

既然你已經學過 tidy 原則,這段程式碼會幫你把資料整理成 tibble,之後就能在 tidyverse 中操作!

先前你學到,對 TermDocumentMatrix() 物件套用 tidy() 會把 TDM 轉成 tibble。這個練習中,你會直接從名為 comments 的評論欄位建立文字資料。

首先使用 unnest_tokens() 將文字轉為小寫,並把評論斷詞為單字。

有時候,在語料的每個群組中保留原始的詞序很有用。為此,請使用 mutate()。在 mutate() 內,你會用到 seq_along() 來從 1 產生到物件長度的整數序列。這能記錄文字最初撰寫時的詞序。

tm 套件中,你會用 removeWords() 來移除停用詞。在 tidyverse 中,則需要先載入停用詞詞彙表,然後在 tidy text 資料框與停用詞之間套用一次 anti_join()

本練習屬於課程

R 情感分析

檢視課程

練習說明

  • 以管線符(%>%)將原始評論物件 bos_reviews 傳入 unnest_tokens() 以建立 tidy_reviews。傳入新欄位名稱 word,並指定 comments 欄。記住在 tidyverse 中不需要 $ 或引號。
  • 用 tidy 的方式建立新變數!把 tidy_reviews 重新指定為將其傳入 group_by 並以欄位 id 分組,然後再 %>% 傳入 mutate()。在 mutate 中建立新變數 original_word_order,其值為 seq_along(word)
  • 列印出 tidy_reviews 這個 tibble。
  • 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 %>% 
  ___(___)
編輯並執行程式碼