文件群組的樹狀矩形圖(treemap)
你經常會處理按群組區分的文件,例如作者、產品或公司。這個練習讓你在保留群組資訊的同時,用精簡的視覺化來了解文本。例如,把顧客評論依產品分組時,你可能想同時探索多個面向。你可以先計算評論的 polarity()。另一個面向是長度。文件長度可以反映情緒強度。如果顧客只留了短短一句「great shoes!」,你可以推測他其實沒有像篇幅較長的正面評論那麼熱情。你也可能想依產品類型分組,例如女性、男性與兒童的鞋款。Treemap 可以同時檢視這些面向。
在文本分析中,treemap 中的每一個小方塊都代表一份文件,例如一則推文。文件會依某種方式分組,例如作者。每個方塊的大小由數值決定,例如字數或字母數。每個方塊的顏色則由情緒分數決定。
在整理好 tibble 之後,你會使用包含 treemap() 函式的 treemap 函式庫來繪製視覺化。下面的程式碼範例宣告了資料、分組變數、大小、顏色與其他視覺屬性。
treemap(
data_frame,
index = c("group", "individual_document"),
vSize = "doc_length",
vColor = "avg_score",
type = "value",
title = "Sentiment Scores by Doc",
palette = c("red", "white", "green")
)
預先載入的 all_books 物件包含一個合併且整潔格式(tidy format)的語料庫,含有 4 本 Shakespeare、3 本 Melville,以及 4 本 Twain 的書。根據 treemap,你應該能看出誰寫的書較長,以及作者整體與各別書籍的極性(polarity)。
本練習屬於課程
R 情感分析
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
book_length <- all_books %>%
# Count number of words per book
___(___)
# Examine the results
book_length