MulaiMulai sekarang secara gratis

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

Lihat Kursus

Petunjuk latihan

  • Gunakan head() pada sb_words untuk meninjau kata-kata teratas.
  • Buat kolom baru expectations dengan membagi frekuensi kata terbesar, freq[1], dengan kolom rank.
  • Mulai sb_plot menggunakan mjs_plot().
    • Masukkan sb_words dengan x = rank dan y = freq.
    • Di dalam mjs_plot() setel show_rollover_text ke FALSE.
  • Timpa sb_plot menggunakan mjs_line() dan masukkan sb_plot.
  • Tambahkan ke sb_plot dengan mjs_add_line().
    • Masukkan objek sb_plot sebelumnya dan vektor expectations.
  • Tempatkan legenda pada objek sb_plot baru menggunakan mjs_add_legend().
    • Masukkan objek sb_plot sebelumnya
    • Label legenda harus terdiri dari "Frequency" dan "Expectation".
  • Panggil sb_plot untuk menampilkan plot. Arahkan kursor ke sebuah titik untuk menyorot titik freq dan Expectation secara 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
Edit dan Jalankan Kode