Začněte nyníZačněte zdarma

Spojení dataframů

V tomto cvičení si procvičíš spojování záznamů – vytvoříš dataset 100 nejlépe hodnocených kaváren v New Yorku podle Yelpu.

API často omezují množství vrácených dat, protože přenos velkých datasetů může být časově i výpočetně náročný. Yelp Business Search API vrátí v jednom volání nejvýše 50 záznamů. Parametr offset ale umožňuje načítat výsledky od zadané pozice. Díky tomu můžeme v jednom volání získat výsledky 1–50 a ve druhém 51–100, které pak spojíme do jednoho dataframu.

pandas (jako pd), requests a json_normalize() jsou už naimportované. 50 nejlépe hodnocených kaváren je uloženo v dataframu top_50_cafes.

Toto cvičení je součástí kurzu

Streamlined Data Ingestion with pandas

Zobrazit kurz

Pokyny k cvičení

  • Přidej do params parametr "offset" tak, aby volání Yelp API vrátilo kavárny 51–100.
  • Spoj výsledky volání API s dataframem top_50_cafes a nastav ignore_index, aby se řádky přečíslovaly.
  • Vypiš rozměry výsledného dataframu cafes a ověř, že obsahuje 100 záznamů.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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
____
Upravit a spustit kód