Terapkan langkah prapemrosesan pada sebuah korpus
Paket tm menyediakan fungsi tm_map() untuk menerapkan fungsi pembersihan ke seluruh korpus, sehingga langkah pembersihan menjadi lebih mudah.
tm_map() menerima dua argumen, yaitu sebuah korpus dan fungsi pembersihan. Di sini, removeNumbers() berasal dari paket tm.
corpus <- tm_map(corpus, removeNumbers)
Demi kompatibilitas, fungsi-fungsi dari base R dan qdap perlu dibungkus dengan content_transformer().
corpus <- tm_map(corpus, content_transformer(replace_abbreviation))
Anda mungkin menerapkan fungsi yang sama pada beberapa korpus; menggunakan fungsi kustom seperti yang ditampilkan di editor akan menghemat waktu (dan baris kode). clean_corpus() menerima satu argumen, corpus, lalu menerapkan serangkaian fungsi pembersihan secara berurutan, kemudian mengembalikan korpus yang telah diperbarui.
Urutan langkah pembersihan berpengaruh. Misalnya, jika Anda removeNumbers() lalu replace_number(), fungsi kedua tidak akan menemukan apa pun untuk diubah! Periksa, periksa, dan periksa kembali hasil Anda!
Latihan ini adalah bagian dari kursus
Text Mining dengan Bag-of-Words di R
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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)
}