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

Left join'lar

sparklyr, tekil veri çerçeveleriyle çalışmanın yanı sıra iki veri çerçevesini birleştirmeni de sağlar. dplyr söz dizimini kullanarak tabloların nasıl birleştirileceğine dair kapsamlı bir anlatım, Joining Data with dplyr kursunda verilir. Bu bölümün geri kalanında, bunu Spark ile nasıl yapacağına dair bazı örnekler göreceksin.

Left join, birinci tablodaki tüm değerleri alır ve ikinci tabloda eşleşme arar. Eşleşme bulursa ikinci tablodan verileri ekler; bulamazsa eksik değerler ekler. İlke, bu diyagramda gösterilmiştir.

Renk tablosu kullanılarak açıklanan bir left join.

Left join'lar, sadece birinci tabloya sütun ekledikleri için bir tür mutating join'dir. sparklyr ile left join yapmak için, iki tibble ve hangi sütun(lar) üzerinden birleştirileceğini belirten bir karakter vektörü vererek left_join() çağır.

left_join(a_tibble, another_tibble, by = c("id_col1", "id_col2"))

Bu join'i sözlü olarak tarif ederken tablo adları ters çevrilir. Bu join şöyle yazılır: "another_tibble, a_tibble ile left join yapılır".

Bu egzersiz, her bir sanatçıyı tanımlayan terimler içeren başka bir Spark DataFrame'ini tanıtıyor. Bunlar, "pop" gibi oldukça genel terimlerden, "swiss hip hop" ve "mathgrindcore" gibi daha niş türlere kadar uzanır.

Bu egzersiz, kursun bir parçasıdır

R ile sparklyr kullanarak Spark’a Giriş

Kursa Göz Atın

Egzersiz talimatları

Senin için spark_conn olarak bir Spark bağlantısı oluşturuldu. Spark'ta saklanan parça meta verileri ve sanatçı terimlerine bağlı tibbler sırasıyla track_metadata_tbl ve artist_terms_tbl olarak önceden tanımlandı.

  • artist_id sütununa göre sanatçı terimlerini parça meta verileriyle left join yap.
    • Birleştirilecek temel tablo olan track_metadata_tbl ilk sırada gelir.
    • İlk tabloya katılacak tablo olan artist_terms_tbl ikinci sırada gelir.
    • Sonucu joined değişkenine ata.
  • Birleşik tabloda kaç satır ve sütun olduğunu belirlemek için sdf_dim() kullan.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# track_metadata_tbl and artist_terms_tbl have been pre-defined
track_metadata_tbl
artist_terms_tbl

# Left join artist terms to track metadata by artist_id
joined <- ___(___, ___, by = ___)

# How many rows and columns are in the joined table?
___
Kodu Düzenle ve Çalıştır