เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

สร้าง list-column data.frame

มาปิดท้ายบทนี้ด้วยการนำ links extractor ที่เราสร้างขึ้นมาใช้งานจริง โดยครั้งนี้จะใช้ list-column แนวคิดของการใช้ nested dataframe (กล่าวคือ dataframe ที่มี list column) คือการเก็บทุกอย่างไว้ใน dataframe เดียวกัน เพื่อให้ workflow ของเราเป็นระเบียบตามแนวทาง Tidyverse

มี tibble ชื่อ df เตรียมไว้ให้แล้ว โดยมีคอลัมน์ urls ที่เก็บ URL ทั้งสี่รายการที่ใช้มาตลอดตั้งแต่ต้นบท หากต้องการดูข้อมูลใน dataframe นี้ สามารถพิมพ์ออกมาใน console ได้เลย

เราจะสร้างคอลัมน์ใหม่ชื่อ links ซึ่งเก็บผลลัพธ์จากฟังก์ชัน get_links() (มีอยู่แล้วใน workspace) เนื่องจากผลลัพธ์ของฟังก์ชันนี้มีความยาวไม่เท่ากัน คอลัมน์ที่ได้จึงเป็น list column ซึ่งจะต้องใช้ unnest() เพื่อแปลงกลับเป็น dataframe ปกติ

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Functional Programming ระดับกลางด้วย purrr

ดูคอร์ส

คำแนะนำการฝึกหัด

  • โหลดแพ็กเกจที่จำเป็นทั้งสามตัว ได้แก่ dplyr, tidyr และ purrr

  • นำ df มาใช้งาน แล้วเรียก mutate() โดยให้ mutate() map ฟังก์ชัน get_links() บนคอลัมน์ urls

  • พิมพ์ผลลัพธ์ที่ได้

  • Unnest ผลลัพธ์

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Load dplyr, tidyr, and purrr




# Create a "links" columns, by mapping get_links() on urls
df2 <- df %>%
  mutate(___ = map(___, get_links)) 

# Print df2 to see what it looks like


# unnest() df2 to have a tidy dataframe
df2 %>%
  ___(cols=c(links))
แก้ไขและรันโค้ด