การวิเคราะห์ URL
เรายังคงสำรวจชุดข้อมูล #RStudioConf ต่อไป ในแบบฝึกหัดนี้จะเน้นวิเคราะห์ URL ที่อยู่ในทวีต
URL จะอยู่ในองค์ประกอบที่ชื่อว่า "url_urls" ซึ่งแต่ละองค์ประกอบอาจเป็น NULL หากทวีตนั้นไม่มี URL หรือเป็นลิสต์ของ URL อย่างน้อยหนึ่งรายการ
เราจะเริ่มด้วยการดึงองค์ประกอบ "url_urls" ทั้งหมดออกจากชุดข้อมูล จากนั้นใช้ purrr ร่วมกับ stringr เพื่อนับจำนวนทวีตที่มีลิงก์ไปยัง URL ที่เกี่ยวข้องกับ GitHub เนื่องจาก GitHub เป็นเว็บไซต์ยอดนิยมในหมู่นักพัฒนา หาก URL ดังกล่าวปรากฏบ่อย แสดงว่าชุดข้อมูลของเรามีชุมชนนักพัฒนาที่เข้มแข็ง
โหลด purrr และ stringr ไว้ให้แล้ว และชุดข้อมูล rstudioconf ยังคงพร้อมใช้งานใน workspace ของคุณ
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Functional Programming ระดับกลางด้วย purrr
คำแนะนำการฝึกหัด
ดึงองค์ประกอบ
"urls_url"ทั้งหมดออกมา แล้วส่งผลลัพธ์เข้าflatten()เพื่อลดระดับลำดับชั้นลงหนึ่งชั้นลบค่า
NULLออกจากผลลัพธ์สร้าง mapper ชื่อ
has_githubเพื่อตรวจสอบว่าสตริงข้อความมีคำว่า"github"อยู่หรือไม่ใช้ตัวแปร
map_*()สำหรับค่าตรรกะร่วมกับhas_githubแล้วส่งผลลัพธ์ไปยังsum()เพื่อนับจำนวนลิงก์ที่มีคำว่า"github"
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Extract the "urls_url" elements, and flatten() the result
urls_clean <- ___(rstudioconf, ___) %>%
___()
# Remove the NULL
compact_urls <- ___(___)
# Create a mapper that detects the patten "github"
has_github <- ___(~ str_detect(.x, "github"))
# Look for the "github" pattern, and sum the result
___( compact_urls, has_github ) %>%
___()