開始使用免費開始

在 tm 中擷取中繼資料

依你要達成的目標不同,你可能會希望在建立語料庫時保留文件的中繼資料。

若要擷取文件層級的中繼資料,欄位名稱與順序必須為:

  1. doc_id-每個文件的唯一字串
  2. text-要分析的文字
  3. ...-其他任何欄位都會自動被歸檔為中繼資料。

有時你需要重新命名欄位,才能符合 DataframeSource() 的需求。names() 函式在這方面很有用。

tweets 已存在於你的工作空間,為一個資料框,包含欄位「num」、「text」、「screenName」與「created」。

本練習屬於課程

R 的 Bag-of-Words 文本探勘

檢視課程

練習說明

  • tweets 的第 1 欄重新命名為「doc_id」。
  • 在較小的 tweets 資料框上,用 DataframeSource() 設定文件綱要(schema)。
  • 透過自訂的 clean_corpus() 函式,將文件集建立為巢狀於其中的可揮發語料庫。
  • 對第 1 筆推文使用 中括號(例如 text_corpus[[1]])搭配 content(),以檢視清理後的純文字。
  • 使用 中括號在第 1 份文件上呼叫 meta() 函式,確認所有中繼資料都已被擷取。

記住,當你存取語料庫的一部分時,使用雙中括號還是單中括號有差別!在本練習中,你會用 content() 搭配雙中括號,用 meta() 搭配單中括號。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Rename columns
___(tweets)[1] <- "___"

# Set the schema: docs
docs <- ___(___)

# Make a clean volatile corpus: text_corpus
text_corpus <- clean_corpus(___(___))

# Examine the first doc content
___(text_corpus[[___]])

# Access the first doc metadata
___(text_corpus[___])
編輯並執行程式碼