Di mana Anda dapat mengamati hukum Zipf?
Meskipun Zipf mengamati penurunan penggunaan kata yang curam dan dapat diprediksi, Anda mungkin belum yakin dengan hukum Zipf. Anda mungkin berpikir, "Saya mengenal banyak kata dan memiliki kosakata yang khas." Itu bisa jadi benar, tetapi hal yang sama tidak berlaku bagi kebanyakan orang! Untuk membuktikannya, mari kita bangun visualisasi dari 3 juta cuitan yang menyebutkan "#sb". Perlu diingat bahwa visualisasi ini tidak sepenuhnya mengikuti hukum Zipf; semua cuitan menyebut tagar yang sama sehingga sedikit bias. Meski begitu, visual yang akan Anda buat menunjukkan penurunan tajam yang mencerminkan keragaman leksikal yang kecil di antara jutaan cuitan. Jadi ada dasar ilmiah dalam penggunaan leksikon untuk analisis bahasa alami!
Dalam latihan ini, Anda akan menggunakan paket metricsgraphics. Walaupun penulis menyarankan penggunaan operator pipa %>%, Anda akan menyusun grafik langkah demi langkah untuk mempelajari berbagai aspek plot. Fungsi utama dari paket metricsgraphics adalah fungsi mjs_plot() yang merupakan langkah pertama untuk membuat plot JavaScript. Setelah itu, Anda dapat menambahkan lapisan lain di atas plot tersebut.
Contoh alur kerja metricsgraphics tanpa menggunakan operator %>% adalah sebagai berikut:
metro_plot <- mjs_plot(data, x = x_axis_name, y = y_axis_name, show_rollover_text = FALSE)
metro_plot <- mjs_line(metro_plot)
metro_plot <- mjs_add_line(metro_plot, line_one_values)
metro_plot <- mjs_add_legend(metro_plot, legend = c('names', 'more_names'))
metro_plot
Latihan ini adalah bagian dari kursus
Analisis Sentimen di R
Petunjuk latihan
- Gunakan
head()padasb_wordsuntuk meninjau kata-kata teratas. - Buat kolom baru
expectationsdengan membagi frekuensi kata terbesar,freq[1], dengan kolomrank. - Mulai
sb_plotmenggunakanmjs_plot().- Masukkan
sb_wordsdenganx = rankdany = freq. - Di dalam
mjs_plot()setelshow_rollover_textkeFALSE.
- Masukkan
- Timpa
sb_plotmenggunakanmjs_line()dan masukkansb_plot. - Tambahkan ke
sb_plotdenganmjs_add_line().- Masukkan objek
sb_plotsebelumnya dan vektorexpectations.
- Masukkan objek
- Tempatkan legenda pada objek
sb_plotbaru menggunakanmjs_add_legend().- Masukkan objek
sb_plotsebelumnya - Label legenda harus terdiri dari
"Frequency"dan"Expectation".
- Masukkan objek
- Panggil
sb_plotuntuk menampilkan plot. Arahkan kursor ke sebuah titik untuk menyorot titikfreqdanExpectationsecara bersamaan. Keajaiban JavaScript!
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Examine sb_words
___
# Create expectations
sb_words$expectations <- sb_words %$%
{___[___] / ___}
# Create metrics plot
sb_plot <- ___(___, x = ___, y = ___, ___ = ___)
# Add 1st line
sb_plot <- ___(___)
# Add 2nd line
sb_plot <- ___(___, ___)
# Add legend
sb_plot <- ___(___, legend = c("___", "___"))
# Display plot
sb_plot