不只文字:tokenization(3)
ft_tokenizer() 以將文字資料依空白切分為詞的簡單技巧為基礎。若要進階使用,你可以用正規表示式來切分文字資料。這可透過 ft_regex_tokenizer() 函式完成。它的用法與 ft_tokenizer() 相同,但多了一個用於分隔符的 pattern 參數。
a_tibble %>%
ft_regex_tokenizer("x", "y", pattern = regex_pattern)
ft_regex_tokenizer() 的回傳值與 ft_tokenizer() 一樣,都是字串向量清單的清單。
資料集中有個名為 artist_mbid 的欄位,包含該藝人在 MusicBrainz(音樂中介資料百科網站)上的 ID。這些 ID 是以連字號分隔的十六進位數字,例如:65b785d9-499f-48e6-9063-3a1fd1bd488d。
本練習屬於課程
使用 R 的 sparklyr:Spark 入門
練習說明
- 從
track_metadata_tbl中選取artist_mbid欄位。 - 將 MusicBrainz 的 ID 依連字號切成十六進位數字的小段。
- 呼叫
ft_regex_tokenizer()。 - 輸出欄位命名為
artist_mbid_chunks。 - 在
pattern參數中使用連字號-。
- 呼叫
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# track_metadata_tbl has been pre-defined
track_metadata_tbl
track_metadata_tbl %>%
# Select artist_mbid column
___ %>%
# Split it by hyphens
___