Scaled Comparison Cloud
Ingat "inflasi nilai" pada skor polaritas di ulasan sewa? Terkadang, cara lain untuk menemukan wawasan adalah dengan menyesuaikan skornya kembali ke 0 lalu melakukan subset korpus. Ini berarti beberapa komentar yang sebelumnya positif dapat menjadi bagian dari subbagian negatif atau sebaliknya karena mean diubah menjadi 0. Latihan ini akan membantu Anda menyesuaikan skor dan kemudian menggambar ulang comparison.cloud(). Menghapus "inflasi nilai" dapat membantu memberikan wawasan tambahan.
Sebelumnya Anda menerapkan polarity() pada bos_reviews$comments dan membuat comparison.cloud(). Dalam latihan ini Anda akan menerapkan scale() pada hasilnya sebelum membuat comparison.cloud(). Lihat apakah visualnya menampilkan sesuatu yang berbeda!
Karena ini pada dasarnya adalah latihan ulasan, banyak kode sudah tersedia; Anda hanya perlu melengkapi objek dan parameter yang benar!
Latihan ini adalah bagian dari kursus
Analisis Sentimen di R
Petunjuk latihan
- Tinjau sebagian
bos_pol$allyang telah dimuat sebelumnya dengan pengindeksan[1:6,1:3]. - Tambahkan kolom baru bernama
scaled_polaritydenganscale()yang diterapkan pada kolom skor polaritasbos_pol$all$polarity. - Untuk komentar positif, lakukan
subset()saat kolom barubos_reviews$scaled_polaritylebih besar dari (>) nol. - Untuk komentar negatif, lakukan
subset()saat kolom barubos_reviews$scaled_polaritykurang dari (<) nol. - Buat
pos_termsmenggunakanpaste()padapos_comments. - Sekarang buat
neg_termsdenganpaste()padaneg_comments. - Susun dokumen yang telah digabung, yaitu dokumen
pos_termsdanneg_terms, menjadi satu korpus bernamaall_terms. - Ikuti alur kerja
tmyang biasa dengan menempatkanVectorSource()di dalamVCorpusyang diterapkan padaall_terms. - Buat
TermDocumentMatrix()menggunakan objekall_corpus. Perhatikan bahwa ini adalah TDM berbobot TfIdf dengan fungsi pembersihan dasar. - Ubah
all_tdmmenjadiall_tdm_mmenggunakanas.matrix(). Lalu ganti nama kolom pada kode yang ada menjadi"positive"dan"negative". - Akhirnya! terapkan
comparison.cloud()pada objek matriksall_tdm_m. Perhatikan kata negatif yang kini paling sering muncul. Mungkin ini akan mengungkap wawasan yang sebelumnya tidak terlihat!
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Review
___
# Scale/center & append
bos_reviews$___ <- scale(___)
# Subset positive comments
pos_comments <- subset(bos_reviews$comments, ___)
# Subset negative comments
neg_comments <- subset(bos_reviews$comments, ___)
# Paste and collapse the positive comments
pos_terms <- paste(___, collapse = " ")
# Paste and collapse the negative comments
neg_terms <- paste(___, collapse = " ")
# Organize
all_terms<- c(___, ___)
# VCorpus
all_corpus <- ___(VectorSource(___))
# TDM
all_tdm <- TermDocumentMatrix(
___,
control = list(
weighting = weightTfIdf,
removePunctuation = TRUE,
stopwords = stopwords(kind = "en")
)
)
# Column names
___ <- as.matrix(___)
colnames(all_tdm_m) <- c("___", "___")
# Comparison cloud
comparison.cloud(
___,
max.words = 100,
colors = c("darkgreen", "darkred")
)