อัตราการว่างงานของคนผิวขาวและคนผิวดำ
ในแบบฝึกหัดนี้ จะเปรียบเทียบอัตราการว่างงานในเขตมหานครระหว่างชายผิวขาวและชายผิวดำ msa_black_emp ถูกโหลดไว้แล้ว รวมถึง DataFrame ใหม่ชื่อ msa_white_emp ที่มีข้อมูลจากตาราง C23002A ของ ACS 5 ปี ปี 2012 ด้วย โดยคำนวณอัตราการว่างงานเป็นเปอร์เซ็นต์ไว้ให้แล้ว จากนั้นจะกรองทั้งสอง DataFrame ให้เหลือเฉพาะคอลัมน์ที่ต้องการ (คอลัมน์ที่แสดงเปอร์เซ็นต์การว่างงานของเพศชาย) แล้ว join ทั้งสองเข้าด้วยกัน และแปลงด้วย melt ให้เป็น DataFrame รูปแบบ tidy เพื่อสร้างภาพด้วย seaborn
pandas และ seaborn ถูกโหลดโดยใช้ชื่อย่อตามปกติแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์ข้อมูลสำมะโนประชากรสหรัฐฯ ด้วย Python
คำแนะนำการฝึกหัด
- สร้าง
tidy_white_empโดยกรองmsa_white_empให้เหลือเฉพาะคอลัมน์"msa"และ"pct_male_unemp"จากนั้นเปลี่ยนชื่อคอลัมน์ที่สองเป็น"white" - Merge
tidy_black_empและtidy_white_empบนคอลัมน์"msa"แล้วกำหนดผลลัพธ์ให้กับtidy_emp - ใช้
meltกับtidy_empโดยกำหนดvalue_varsเป็นชื่อคอลัมน์ของสองกลุ่มเชื้อชาติ ตั้งค่าvar_nameเป็น"race"และvalue_nameเป็น"unemployment" - พล็อตกราฟระหว่างอัตราการว่างงานกับค่าความแตกต่าง (dissimilarity) โดยแยกตามเชื้อชาติด้วยพารามิเตอร์
hue
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Restrict DataFrame to columns of interest, rename columns
tidy_black_emp = msa_black_emp[["msa", "D", "pct_male_unemp"]]
tidy_black_emp.columns = ["msa", "D", "black"]
tidy_white_emp = ____
tidy_white_emp.columns = ____
tidy_emp = ____
# Use melt to create tidy DataFrame
tidy_msa_emp = tidy_emp.melt(id_vars = ["msa", "D"],
value_vars = ____, var_name = ____,
value_name = ____)
# Visually compare male and female unemployment
sns.lmplot(____, data = tidy_msa_emp)
plt.show()