Bir korpusa ön işleme adımlarını uygula
tm paketi, temizlik işlevlerini tüm bir korpusa uygulamayı kolaylaştıran tm_map() işlevini sağlar.
tm_map() iki argüman alır: bir korpus ve bir temizlik işlevi. Burada, removeNumbers() tm paketinden gelir.
corpus <- tm_map(corpus, removeNumbers)
Uyumluluk için, base R ve qdap işlevlerinin content_transformer() ile sarmalanması gerekir.
corpus <- tm_map(corpus, content_transformer(replace_abbreviation))
Aynı işlevleri birden fazla korpusta uygulayabilirsin; editörde gösterilen gibi özel bir işlev kullanmak zamandan (ve kod satırından) tasarruf sağlar. clean_corpus() tek bir argüman alır, corpus, ve buna sırayla bir dizi temizlik işlevi uygular, ardından güncellenmiş korpusu döndürür.
Temizlik adımlarının sırası fark yaratır. Örneğin, önce removeNumbers() sonra replace_number() uygularsan, ikinci işlev değiştirecek bir şey bulamayacaktır! Sonuçlarını kontrol et, tekrar kontrol et, sonra bir kez daha kontrol et!
Bu egzersiz
R ile Bag-of-Words ile Metin Madenciliği
kursunun bir parçasıdırUygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Alter the function code to match the instructions
clean_corpus <- function(corpus) {
# Remove punctuation
corpus <- tm_map(corpus, ___)
# Transform to lower case
corpus <- tm_map(corpus, ___)
# Add more stopwords
corpus <- tm_map(corpus, removeWords, words = c(stopwords("en"), "coffee", ___))
# Strip whitespace
___
return(corpus)
}