MulaiMulai sekarang secara gratis

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

Lihat Kursus

Petunjuk latihan

  • Tinjau sebagian bos_pol$all yang telah dimuat sebelumnya dengan pengindeksan [1:6,1:3].
  • Tambahkan kolom baru bernama scaled_polarity dengan scale() yang diterapkan pada kolom skor polaritas bos_pol$all$polarity.
  • Untuk komentar positif, lakukan subset() saat kolom baru bos_reviews$scaled_polarity lebih besar dari (>) nol.
  • Untuk komentar negatif, lakukan subset() saat kolom baru bos_reviews$scaled_polarity kurang dari (<) nol.
  • Buat pos_terms menggunakan paste() pada pos_comments.
  • Sekarang buat neg_terms dengan paste() pada neg_comments.
  • Susun dokumen yang telah digabung, yaitu dokumen pos_terms dan neg_terms, menjadi satu korpus bernama all_terms.
  • Ikuti alur kerja tm yang biasa dengan menempatkan VectorSource() di dalam VCorpus yang diterapkan pada all_terms.
  • Buat TermDocumentMatrix() menggunakan objek all_corpus. Perhatikan bahwa ini adalah TDM berbobot TfIdf dengan fungsi pembersihan dasar.
  • Ubah all_tdm menjadi all_tdm_m menggunakan as.matrix(). Lalu ganti nama kolom pada kode yang ada menjadi "positive" dan "negative".
  • Akhirnya! terapkan comparison.cloud() pada objek matriks all_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")
)
Edit dan Jalankan Kode