การ Recode ตัวแปรและคำนวณผลรวมตามกลุ่ม
dplyr ซึ่งเป็นหนึ่งในแพ็กเกจหลักของ tidyverse มีฟังก์ชันสำหรับการจัดการข้อมูลอยู่มากมาย ความสามารถเหล่านี้ช่วยให้ผู้ใช้สามารถ recode ชุดข้อมูล กำหนดกลุ่มภายในชุดข้อมูล และคำนวณค่าต่าง ๆ ตามกลุ่มได้ การดำเนินการเหล่านี้มักอยู่ใน pipe ซึ่งใช้ตัวดำเนินการ %>%
ในแบบฝึกหัดนี้ จะได้ทำงานกับข้อมูล ACS ในรูปแบบ tidyverse workflow โดยจะระบุตัวแปรรายได้มัธยฐานของครัวเรือนจากตาราง ACS B19001 ที่ต่ำกว่า $35,000, ระหว่าง $35,000 ถึง $75,000 และสูงกว่า $75,000 จากนั้นจะนับจำนวนครัวเรือนที่อยู่ในแต่ละกลุ่มสำหรับเขตต่าง ๆ ในรัฐวอชิงตัน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์ข้อมูลสำมะโนประชากรสหรัฐฯ ใน R
คำแนะนำการฝึกหัด
- กรองแถวที่ตัวแปรมีค่าเท่ากับ
"B19001_001"ออก เนื่องจากแถวนี้แทนจำนวนครัวเรือนทั้งหมด - ใช้ฟังก์ชัน
case_when()เพื่อสร้างคอลัมน์ชื่อincgroupสำหรับกำหนดกลุ่มที่ผ่านการ recode แล้ว - ใช้ฟังก์ชัน
group_by()เพื่อจัดกลุ่มชุดข้อมูลตามชื่อเขตและกลุ่มรายได้ - สุดท้าย ใช้ฟังก์ชัน
summarize()เพื่อรวมผลรวมของแต่ละกลุ่มตามเขต แล้วตรวจสอบผลลัพธ์
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Use a tidy workflow to wrangle ACS data
wa_grouped <- wa_income %>%
___(___ != "B19001_001") %>%
mutate(incgroup = ___(
variable < "B19001_008" ~ "below35k",
variable < "B19001_013" ~ "35kto75k",
TRUE ~ "above75k"
)) %>%
___(NAME, incgroup) %>%
___(group_est = sum(estimate))
wa_grouped