LoslegenKostenlos loslegen

Zip Code Tabulation Areas

Im Marketing ist es sehr üblich, demografische Merkmale nach ZIP Codes zu betrachten. Zip Code Tabulation Areas ("ZCTAs") sind vom Census definierte Entsprechungen zu ZIP Codes, die aus Census-Blöcken aufgebaut sind. In dieser Übung forderst du die Gesamtbevölkerung für alle ZCTAs im Bundesstaat Alabama an.

In pandas kannst du mit einem Index bestimmte Zeilen abrufen. Die GEOIDs eignen sich gut als Zeilenkennungen. In dieser Übung setzt du einen mehrstufigen Index basierend auf dem Bundesstaat und der ZCTA jeder Zeile.

Die Pakete requests und pandas wurden importiert. base_url ist definiert, ebenso das predicates-Dictionary mit der Liste der anzufordernden Variablen.

Diese Übung ist Teil des Kurses

Analyse von US-Volkszählungsdaten mit Python

Kurs anzeigen

Anleitung zur Übung

  • Setze den Schlüssel "for" im predicates-Dict so, dass alle ZCTAs zurückgegeben werden; schreibe die Geografie ausgeschrieben als "zip code tabulation area (or part)""
  • Setze den Schlüssel "in" im predicates-Dict so, dass nur ZCTAs im Bundesstaat Alabama zurückgegeben werden; du musst den FIPS-Code für Alabama in einer der Online-Quellen nachschlagen, die du kennengelernt hast
  • Setze den DataFrame-Index als Verkettung der Spalten state und zcta. Verwende inplace = True, um keinen neuen DataFrame zu erstellen.

Interaktive Übung

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

# Build dictionary of predicates and execute the request
predicates = {}
predicates["get"] = ",".join(["NAME",  "P001001"])
____
____
r = requests.get(base_url, params=predicates)

# Construct the DataFrame
col_names = ["name", "total_pop", "state", "zcta"]
zctas = pd.DataFrame(columns=col_names, data=r.json()[1:])
zctas["total_pop"] = zctas["total_pop"].astype(int)

# Set multilevel index from GEOIDs and print the head
zctas.set_index([____, ____], inplace = True)
print(zctas.head())
Code bearbeiten und ausführen