การจัดเรียงแถว
ในยุคที่เพลงถูกเก็บไว้บนแผ่น CD มีปัญหาคลาสสิกที่หลายคนเจอ นั่นคือจะจัดเรียง CD อย่างไรให้หาได้ง่าย ตามชื่อศิลปิน? ตามลำดับเวลา? หรือตามแนวเพลง?
ฟังก์ชัน arrange() ช่วยให้จัดเรียงแถวใน tibble ได้ตามต้องการ โดยรับ tibble และตามด้วยชื่อคอลัมน์ที่ไม่ต้องใส่เครื่องหมายคำพูด ตัวอย่างเช่น หากต้องการเรียงจากน้อยไปมากตามคอลัมน์ x แล้วจึงเรียงจากมากไปน้อยตามคอลัมน์ y ในกรณีที่ x มีค่าเท่ากัน ให้เขียนดังนี้
a_tibble %>%
arrange(x, desc(y))
สังเกตการใช้ desc() เพื่อระบุการเรียงจากมากไปน้อย และควรทราบด้วยว่าใน sparklyr นั้น ฟังก์ชัน order() ที่ใช้จัดเรียงแถวใน data.frame ไม่รองรับการทำงานในที่นี้
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
แนะนำ Spark ด้วย sparklyr ใน R
คำแนะนำการฝึกหัด
การเชื่อมต่อ Spark ถูกสร้างไว้ให้แล้วในชื่อ spark_conn และ tibble ที่เชื่อมกับข้อมูล metadata ของเพลงใน Spark ถูกกำหนดไว้ล่วงหน้าในชื่อ track_metadata_tbl
- เลือกฟิลด์
artist_name,release,titleและyear - ส่งผลลัพธ์ผ่าน pipe เพื่อกรองเฉพาะเพลงจากยุค 1960s
- ส่งผลลัพธ์ผ่าน pipe ไปยัง
arrange()เพื่อเรียงตามartist_nameจากนั้นตามyearจากมากไปน้อย แล้วจึงตามtitle
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# track_metadata_tbl has been pre-defined
track_metadata_tbl
# Manipulate the track metadata
track_metadata_tbl %>%
# Select columns
___ %>%
# Filter rows
___ %>%
# Arrange rows
___