Kelimelerden fazlası: tokenization (1)
Metin madenciliğinin yaygın kullanımları arasında, alışveriş yorumlarını analiz ederek müşterilerin ürün hakkındaki duygularını anlamak veya finans haberlerini analiz ederek hisse senedi fiyatlarına yönelik duyarlılığı tahmin etmek yer alır. Metin verisini analiz edebilmek için, yaygın ön işleme adımları metni küçük harfe dönüştürmek (bkz. tolower()) ve cümleleri tek tek kelimelere ayırmaktır.
ft_tokenizer() bu iki adımı da gerçekleştirir. Kullanımı, gördüğün diğer dönüşümlerle aynı deseni izler ve başka argüman gerektirmez.
shop_reviews %>%
ft_tokenizer("review_text", "review_words")
Çıktıda her satırda farklı sayıda kelime olabileceği için, output.col bir liste sütunudur; her bir eleman bir dizi (string) listesidir. Metin verisini analiz etmek için genellikle veride satır başına bir kelime olmasını isteriz. Dizi-listelerinden oluşan bu biçim, tidyr paketindeki unnest() kullanılarak tek bir karakter vektörüne dönüştürülebilir. Şu anda Spark üzerinde unnest işlemi için bir yöntem yok; bu yüzden dönüştürmeden önce veriyi R'a collect ederek alman gerekir. Bunu başarmak için kod deseni aşağıdaki gibidir.
library(tidyr)
text_data %>%
ft_tokenizer("sentences", "word") %>%
collect() %>%
mutate(word = lapply(word, as.character)) %>%
unnest(word)
tidyr paketini kullanma hakkında daha fazla bilgi edinmek istersen, R'de Veri Temizleme kursunu alabilirsin.
Bu egzersiz, kursun bir parçasıdır
R ile sparklyr kullanarak Spark’a Giriş
Egzersiz talimatları
Senin için spark_conn olarak bir Spark bağlantısı oluşturuldu. Spark'ta depolanan parça (track) meta verilerine bağlı bir tibble, track_metadata_tbl olarak önceden tanımlandı.
track_metadata_tbl'dentitle_textadlı bir değişken oluştur.artist_namevetitlealanlarını seç.- Başlığı kelimelere ayıran yeni bir alan olan
wordu oluşturmak içinft_tokenizer()kullan. - Sonucu topla.
wordsütununu,lapplyveas.characterkullanarak karakter vektörleri listesine düzleştirerek mutate et.- Liste sütununu düzleştirmek ve satır başına bir kelime elde etmek için
unnest()kullan.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# track_metadata_tbl has been pre-defined
track_metadata_tbl
title_text <- track_metadata_tbl %>%
# Select artist_name, title
___ %>%
# Tokenize title to words
___ %>%
# Collect the result
___ %>%
# Flatten the word column
___ %>%
# Unnest the list column
___