ใช้ .melt() เพื่อปรับโครงสร้างข้อมูลภาครัฐ
สำนักสถิติแรงงานแห่งสหรัฐอเมริกา (BLS) มักนำเสนอชุดข้อมูลในรูปแบบที่อ่านง่าย โดยแยกแต่ละเดือนเป็นคอลัมน์ และแต่ละปีเป็นแถว แต่รูปแบบ wide นี้ทำให้การพล็อตข้อมูลตามช่วงเวลาทำได้ยาก ในแบบฝึกหัดนี้ คุณจะปรับโครงสร้างตารางข้อมูลอัตราการว่างงานของสหรัฐฯ จาก BLS ให้อยู่ในรูปแบบที่พล็อตได้โดยใช้ .melt() จากนั้นจะต้องเพิ่มคอลัมน์วันที่และเรียงลำดับข้อมูลก่อนพล็อต
ข้อมูลอัตราการว่างงานถูกโหลดไว้ในตารางชื่อ ur_wide แล้ว ลองสำรวจตารางนี้ก่อนเริ่มทำแบบฝึกหัดได้เลย
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การรวมข้อมูลด้วย pandas
คำแนะนำการฝึกหัด
- ใช้
.melt()เพื่อ unpivot คอลัมน์ทั้งหมดของur_wideยกเว้นคอลัมน์yearและกำหนดให้คอลัมน์ที่เก็บชื่อเดือนและค่าข้อมูลมีชื่อว่าmonthและunempl_rateตามลำดับ จากนั้นบันทึกผลลัพธ์เป็นur_tall - เพิ่มคอลัมน์ชื่อ
dateในur_tallโดยนำคอลัมน์yearและmonthมารวมกันในรูปแบบ year-month แล้วแปลงเป็นชนิดข้อมูลวันที่ - เรียงลำดับ
ur_tallตามวันที่และบันทึกเป็นur_sorted - ใช้
ur_sortedพล็อตกราฟโดยให้unempl_rateอยู่บนแกน y และdateอยู่บนแกน x
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# unpivot everything besides the year column
ur_tall = ____
# Create a date column using the month and year columns of ur_tall
ur_tall['date'] = pd.to_datetime(ur_tall['____'] + '-' + ____)
# Sort ur_tall by date in ascending order
ur_sorted = ____
# Plot the unempl_rate by date
ur_sorted.plot(____)
plt.show()