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

ต่อ dataframe เข้าด้วยกัน

ในแบบฝึกหัดนี้ จะฝึกการต่อข้อมูลเข้าด้วยกันโดยสร้างชุดข้อมูลร้านกาแฟที่ได้คะแนนสูงสุด 100 อันดับในนิวยอร์กซิตี้จาก Yelp

โดยทั่วไป API จะจำกัดปริมาณข้อมูลที่ส่งกลับในแต่ละครั้ง เนื่องจากการส่งชุดข้อมูลขนาดใหญ่ใช้เวลาและทรัพยากรมาก Yelp Business Search API จำกัดผลลัพธ์ต่อการเรียกหนึ่งครั้งไว้ที่ 50 รายการ อย่างไรก็ตาม parameter offset ช่วยให้ดึงผลลัพธ์โดยเริ่มต้นหลังจากจำนวนที่กำหนดได้ ด้วยการปรับ offset เราจึงดึงผลลัพธ์ที่ 1-50 ในการเรียกครั้งแรก และ 51-100 ในการเรียกครั้งที่สอง จากนั้นนำ dataframe ทั้งสองมาต่อกัน

ได้ import pandas (เป็น pd), requests และ json_normalize() ไว้แล้ว ข้อมูลร้านกาแฟ 50 อันดับแรกอยู่ใน dataframe ชื่อ top_50_cafes แล้ว

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

การนำเข้าข้อมูลด้วย pandas อย่างมีประสิทธิภาพ

ดูคอร์ส

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

  • เพิ่ม parameter "offset" ใน params เพื่อให้การเรียก Yelp API ดึงข้อมูลร้านกาแฟอันดับที่ 51-100
  • ต่อผลลัพธ์จากการเรียก API เข้ากับ top_50_cafes โดยตั้งค่า ignore_index เพื่อให้มีการเรียงหมายเลขแถวใหม่
  • พิมพ์ shape ของ dataframe cafes ที่ได้ เพื่อยืนยันว่ามีข้อมูลครบ 100 รายการ

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

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

# Add an offset parameter to get cafes 51-100
params = {"term": "cafe", 
          "location": "NYC",
          "sort_by": "rating", 
          "limit": 50,
          ____}

result = requests.get(api_url, headers=headers, params=params)
next_50_cafes = json_normalize(result.json()["businesses"])

# Concatenate the results, setting ignore_index to renumber rows
cafes = ____

# Print shape of cafes
____
แก้ไขและรันโค้ด