LoslegenKostenlos loslegen

DataFrames zusammenfügen

In dieser Übung übst du das Verketten von Einträgen, indem du einen Datensatz der 100 bestbewerteten Cafés in New York City laut Yelp erstellst.

APIs begrenzen oft die Menge der zurückgegebenen Daten, da das Senden großer Datensätze zeit- und ressourcenintensiv sein kann. Die Yelp Business Search API begrenzt die Ergebnisse pro Aufruf auf 50 Einträge. Mit dem Parameter offset kannst du jedoch Ergebnisse ab einer bestimmten Position abrufen. Indem wir den Offset anpassen, bekommen wir in einem Aufruf die Ergebnisse 1–50 und in einem weiteren die Ergebnisse 51–100. Anschließend können wir die DataFrames zusammenfügen.

pandas (als pd), requests und json_normalize() sind importiert. Die 50 top-bewerteten Cafés liegen bereits in einem DataFrame top_50_cafes vor.

Diese Übung ist Teil des Kurses

Vereinfachte Datenaufnahme mit pandas

Kurs anzeigen

Anleitung zur Übung

  • Füge params einen Parameter "offset" hinzu, damit der Yelp-API-Aufruf die Cafés 51–100 abruft.
  • Füge die Ergebnisse des API-Aufrufs an top_50_cafes an und setze ignore_index, damit die Zeilen neu nummeriert werden.
  • Gib die Form des resultierenden DataFrames cafes aus, um zu bestätigen, dass 100 Einträge vorhanden sind.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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
____
Code bearbeiten und ausführen