MulaiMulai sekarang secara gratis

Cetak frekuensi kata

Setelah menggabungkan value (jumlah kemunculan) dengan key (kata) yang sama, pada latihan ini Anda akan mengambil 10 frekuensi kata pertama. Anda bisa saja mengambil semua elemen sekaligus menggunakan collect(), tetapi itu merupakan praktik yang buruk dan tidak direkomendasikan. RDD bisa sangat besar: Anda dapat kehabisan memori dan komputer Anda crash.

Bagaimana jika kita ingin mengambil 10 kata teratas? Untuk itu, pertama-tama Anda perlu menukar key (kata) dan value (jumlah) sehingga key adalah jumlah dan value adalah kata. Saat ini, result_RDD memiliki key sebagai elemen 0 dan value sebagai elemen 1. Setelah Anda menukar key dan value dalam tuple, Anda akan mengurutkan paired RDD berdasarkan key (jumlah). Dengan cara ini lebih mudah mengurutkan RDD berdasarkan key daripada menggunakan operasi sortByKey di PySpark. Terakhir, Anda akan mengambil 10 kata teratas berdasarkan frekuensinya dari RDD yang sudah diurutkan.

Anda sudah memiliki SparkContext sc dan resultRDD yang tersedia di workspace Anda.

Latihan ini adalah bagian dari kursus

Fundamental Big Data dengan PySpark

Lihat Kursus

Petunjuk latihan

  • Cetak 10 kata pertama beserta frekuensinya dari RDD resultRDD.
  • Tukar key dan value di resultRDD.
  • Urutkan key menurut urutan menurun.
  • Cetak 10 kata paling sering beserta frekuensinya dari RDD yang sudah diurutkan.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Display the first 10 words and their frequencies from the input RDD
for word in resultRDD.____(10):
	print(word)

# Swap the keys and values from the input RDD
resultRDD_swap = resultRDD.____(lambda x: (x[1], x[____]))

# Sort the keys in descending order
resultRDD_swap_sort = resultRDD_swap.____(ascending=False)

# Show the top 10 most frequent words and their frequencies from the sorted RDD
for word in resultRDD_swap_sort.____(____):
	print("{},{}". format(____, word[0]))
Edit dan Jalankan Kode