MulaiMulai sekarang secara gratis

Menemukan urutan kata yang umum

Sebelumnya kita telah melihat cara membuat kueri yang menemukan urutan kata sepanjang tiga ("3-tuple"). Kita menggunakan kueri tersebut sebagai subkueri dalam kueri SQL tradisional untuk menemukan 3-tuple yang paling umum dalam dokumen teks. Sekarang Anda akan melakukan tugas serupa untuk menemukan 5-tuple yang paling umum.

DataFrame text_df tersedia. DataFrame ini memuat lima bab pertama dari teks Sherlock Holmes. DataFrame ini memiliki kolom: word, id, part, title. Kolom id bertipe integer, di mana kata yang muncul lebih akhir dalam dokumen memiliki id yang lebih besar daripada kata yang muncul sebelumnya. Kolom part memisahkan data per bab. DataFrame text_df juga didaftarkan sebagai tabel sementara bernama text. Tujuan kita adalah membuat himpunan data di mana setiap baris merepresentasikan sebuah 5-tuple, dengan count yang menunjukkan berapa kali tuple tersebut muncul dalam himpunan data.

Latihan ini adalah bagian dari kursus

Pengantar Spark SQL dalam Python

Lihat Kursus

Petunjuk latihan

  • Buat sebuah kueri query yang menemukan 10 5-tuple paling umum dalam himpunan data.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Find the top 10 sequences of five words
query = """
SELECT w1, w2, w3, w4, w5, COUNT(*) AS count FROM (
   SELECT word AS w1,
   LEAD(____) OVER(____ ) AS w2,
   ____ AS w3,
   ____ AS w4,
   ____ AS w5
   FROM text
)
GROUP BY w1, w2, w3, w4, w5
ORDER BY count DESC, w1, w2, w3, w4, w5
LIMIT ____
"""
df = spark.sql(query)
df.show()
Edit dan Jalankan Kode