ПочатиПочніть безкоштовно

Об'єднання датафреймів

У цій вправі ви потренуєтеся об'єднувати записи, створивши набір даних зі 100 кафе з найвищими оцінками в Нью-Йорку за версією Yelp.

API часто обмежують обсяг даних у відповіді, адже передавання великих наборів даних потребує часу й ресурсів. Yelp Business Search API обмежує кількість результатів в одному виклику 50 записами. Однак параметр offset дає змогу отримати результати, починаючи після вказаної кількості. Змінивши зсув, ми можемо отримати результати 1–50 в одному виклику та 51–100 — в іншому. Потім ми можемо об'єднати датафрейми.

pandas (як pd), requests і json_normalize() уже імпортовано. 50 найрейтинговіших кафе вже збережено в датафреймі top_50_cafes.

Ця вправа є частиною курсу

Оптимізоване завантаження даних із pandas

Переглянути курс

Інструкції до вправи

  • Додайте параметр "offset" до params, щоб виклик Yelp API отримав кафе 51–100.
  • Об'єднайте результати виклику API з top_50_cafes, установивши ignore_index, щоб рядки було перенумеровано.
  • Виведіть на друк розмірність датафрейму 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
____
Редагувати та запускати код