ความครอบคลุมของประกันสุขภาพ
กฎหมาย Affordable Care Act มีผลบังคับใช้ในปี 2014 โดยมีเป้าหมายหนึ่งคือเพิ่มความครอบคลุมของประกันสุขภาพในกลุ่มผู้ใหญ่วัยหนุ่มสาวที่มีสุขภาพดี ความครอบคลุมของประกันสุขภาพในกลุ่มอายุ 19-25 ปีเปลี่ยนแปลงไปอย่างไรหลังจากกฎหมายนี้ผ่าน? มาคำนวณการเปลี่ยนแปลงเป็น percentage point ของความครอบคลุมในแต่ละรัฐ แล้วพล็อตการเปลี่ยนแปลงนั้นเทียบกับอัตราความครอบคลุมเริ่มต้น
มีการโหลดตาราง ACS B27022 - "Health Insurance Coverage Status By Sex By Enrollment Status For Young Adults Aged 19 To 25" ไว้แล้ว ชื่อคอลัมน์ (ที่พิมพ์ออกมาในคอนโซล) แสดงการแบ่งตามเพศ (m/f) สถานะการลงทะเบียนเรียน (school/noschool) และการมีประกัน (insured/uninsured)
ขอให้ทราบว่าในคอร์สนี้เราใช้หน่วยเป็นเปอร์เซ็นต์ตลอด
มีการ import pandas และ seaborn ด้วยชื่อย่อปกติแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์ข้อมูลสำมะโนประชากรสหรัฐฯ ด้วย Python
คำแนะนำการฝึกหัด
- คำนวณเปอร์เซ็นต์ผู้มีประกัน โดยนำ
insured_totalคูณ 100 แล้วหารด้วยประชากรtotal - สร้าง pivot table ชื่อ
states_pvtโดยให้แถวแทนรัฐ (index = "state"), คอลัมน์แทนปี (columns = "year") และvaluesเป็น"pct_insured" - คำนวณการเปลี่ยนแปลงของเปอร์เซ็นต์ผู้มีประกัน โดยนำ
pct_insured_2013ลบออกจากpct_insured_2017 - พล็อตการเปลี่ยนแปลงของอัตราการมีประกัน (
y) เทียบกับอัตราในปี 2013 (x)
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Calculate percent insured
states["insured_total"] = states["m_school_insured"] + states["m_noschool_insured"] + states["f_school_insured"] + states["f_noschool_insured"]
states["pct_insured"] = ____
# Pivot the table and rename the columns
states_pvt = states.pivot(____)
states_pvt.columns = ["pct_insured_2013", "pct_insured_2017"]
# Calculate the change in insurance rates 2013 to 2017
states_pvt["pct_insured_change"] = ____
# Plot the change against initial (2013) insurance rates
sns.lmplot(x = ____, y = ____, data = states_pvt)
plt.show()