เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ใช้ merge_asof() เพื่อสร้างชุดข้อมูล

ฟังก์ชัน merge_asof() ช่วยสร้างชุดข้อมูลในกรณีที่มีตารางวันที่เริ่มต้นและสิ้นสุด แล้วต้องการนำมาสร้างแฟล็กในอีกตารางหนึ่ง ในแบบฝึกหัดนี้ได้เตรียมข้อมูล gdp ซึ่งเป็นตารางค่า GDP รายไตรมาสของสหรัฐอเมริกาช่วงทศวรรษ 1980 ไว้ให้แล้ว นอกจากนี้ยังมีตาราง recession ที่บันทึกวันที่เริ่มต้นและวันที่สิ้นสุดของภาวะเศรษฐกิจถดถอยแต่ละครั้งในสหรัฐฯ ตั้งแต่ปี 1980 ให้ใช้ merge_asof() เพื่อรวมตารางทั้งสองเข้าด้วยกัน และสร้างแฟล็กสถานะเพื่อระบุว่าแต่ละไตรมาสอยู่ในช่วงเศรษฐกิจถดถอยหรือไม่ จากนั้นพล็อตกราฟแท่งเพื่อตรวจสอบผลลัพธ์

ตาราง gdp และ recession ได้โหลดไว้ให้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การรวมข้อมูลด้วย pandas

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้ merge_asof() รวม gdp และ recession โดยอิงคอลัมน์ date กำหนดให้ gdp เป็นตารางซ้าย แล้วบันทึกผลลัพธ์ลงในตัวแปร gdp_recession
  • สร้าง list ชื่อ is_recession โดยใช้ list comprehension และ conditional expression โดยให้ตรวจสอบแต่ละแถวว่าค่าใน gdp_recession['econ_status'] เท่ากับ 'recession' หรือไม่ ถ้าใช่ให้ใส่ 'r' ถ้าไม่ใช่ให้ใส่ 'g'
  • ใช้ gdp_recession พล็อตกราฟแท่งของ gdp เทียบกับ date โดยกำหนดอาร์กิวเมนต์ color เป็น is_recession

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Merge gdp and recession on date using merge_asof()
gdp_recession = ____

# Create a list based on the row value of gdp_recession['econ_status']
is_recession = ['____' if s=='recession' else '____' for s in gdp_recession['econ_status']]

# Plot a bar chart of gdp_recession
gdp_recession.plot(kind=____, y=____, x=____, color=____, rot=90)
plt.show()
แก้ไขและรันโค้ด