BaşlayınÜcretsiz başlayın

DataFrame’leri birleştir (concatenate)

Bu egzersizde, Yelp’e göre New York City’deki en yüksek puanlı 100 kafeden oluşan bir veri kümesi oluşturarak kayıtları birleştirmeyi pratiğe dökeceksin.

API’ler genellikle döndürülen veri miktarını sınırlar; çünkü büyük veri kümelerini göndermek zaman ve kaynak açısından maliyetlidir. Yelp Business Search API’si tek bir çağrıda 50 kayıtla sınırlandırır. Ancak, offset parametresi belirli bir sayıdan sonra başlayan sonuçları almanı sağlar. Ofseti değiştirerek, bir çağrıda 1-50 ve diğerinde 51-100 arası sonuçları alabiliriz. Sonrasında bu DataFrame’leri ekleyebiliriz.

pandas (pd olarak), requests ve json_normalize() içe aktarılmış durumda. En yüksek puanlı 50 kafe zaten top_50_cafes adlı bir DataFrame’de bulunuyor.

Bu egzersiz, kursun bir parçasıdır

pandas ile Kolaylaştırılmış Veri Alımı

Kursa Göz Atın

Egzersiz talimatları

  • Yelp API çağrısının 51-100 arası kafeleri getirmesi için params içine bir "offset" parametresi ekle.
  • API çağrısının sonuçlarını top_50_cafes ile birleştirirken satırların yeniden numaralanması için ignore_index değerini ayarla.
  • Ortaya çıkan cafes DataFrame’inin şeklini (shape) yazdırarak 100 kayıt olduğundan emin ol.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# 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
____
Kodu Düzenle ve Çalıştır