BaşlayınÜcretsiz Başlayın

Zipf yasasını nerede gözlemleyebilirsin?

Zipf, sözcük kullanımında keskin ve öngörülebilir bir düşüş gözlemlemiş olsa da, sen Zipf yasasına ikna olmayabilirsin. “Ben pek çok kelime biliyorum ve kendime özgü bir kelime dağarcığım var” diye düşünebilirsin. Haklı olabilirsin, ama çoğu insan için durum böyle değil! Bunu kanıtlamak için, “#sb” etiketini içeren 3 milyon tweet’ten bir görselleştirme oluşturalım. Unutma, bu görsel Zipf yasasına birebir uymuyor; tüm tweet’ler aynı hashtag’i içerdiğinden biraz kaymış bir dağılım var. Yine de oluşturacağın görsel, milyonlarca tweet arasında küçük bir sözcük çeşitliliğini gösteren keskin bir düşüş eğrisini takip ediyor. Doğal dil analizinde sözlükler kullanmanın arkasında bir miktar bilim var yani!

Bu egzersizde metricsgraphics paketini kullanacaksın. Yazar, %>% pipe operatörünü kullanmayı önerse de, grafiğin farklı yönlerini öğrenmek için görselleştirmeyi adım adım oluşturacaksın. metricsgraphics paketinin ana işlevi, JavaScript grafiğinin ilk adımı olan mjs_plot() fonksiyonudur. Bunu oluşturduktan sonra grafiğin üzerine başka katmanlar ekleyebilirsin.

%>% operatörünü kullanmadan bir metricsgraphics iş akışı örneği aşağıdadır:

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

Bu egzersiz

R ile Duygu Analizi

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Üst sıradaki sözcükleri görmek için sb_words üzerinde head() kullan.
  • En büyük sözcük frekansını, freq[1], rank sütununa bölerek yeni bir expectations sütunu oluştur.
  • mjs_plot() ile sb_plot'u başlat.
    • sb_words'u x = rank ve y = freq ile geçir.
    • mjs_plot() içinde show_rollover_text değerini FALSE yap.
  • mjs_line() kullanarak ve sb_plot'u geçirerek sb_plot'u güncelle.
  • mjs_add_line() ile sb_plot'a ekleme yap.
    • Önceki sb_plot nesnesini ve expectations vektörünü geçir.
  • mjs_add_legend() kullanarak yeni bir sb_plot nesnesine açıklama kutusu (legend) yerleştir.
    • Önceki sb_plot nesnesini geçir.
    • Açıklama etiketleri "Frequency" ve "Expectation" olarak olmalı.
  • Grafiği göstermek için sb_plot'u çağır. Bir noktanın üzerine geldiğinde aynı anda bir freq ve Expectation noktasının vurgulandığını göreceksin. JavaScript’in sihri!

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# 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
Kodu Düzenle ve Çalıştır