Zip Code Tabulation Areas
Nel marketing è molto comune voler conoscere la demografia per codice ZIP. Le Zip Code Tabulation Areas ("ZCTA") sono equivalenti ai codici ZIP definiti dal Census e costruiti a partire dai blocchi del Census. In questo esercizio richiederai la popolazione totale per tutte le ZCTA nello stato dell'Alabama.
In pandas, un indice può essere usato per recuperare righe specifiche. I GEOID sono identificatori di riga adatti. In questo esercizio imposterai un indice multilivello basato sullo stato e sulla ZCTA di ciascuna riga.
I pacchetti requests e pandas sono già importati. base_url è definita, così come il dizionario predicates con l'elenco delle variabili da richiedere.
Questo esercizio fa parte del corso
Analizzare i dati del Censimento USA con Python
Istruzioni dell'esercizio
- Imposta la chiave
"for"nel dizionariopredicatesper restituire tutte le ZCTA; scrivi per esteso la geografia come"zip code tabulation area (or part)"" - Imposta la chiave
"in"nel dizionariopredicatesper restituire solo le ZCTA nello stato dell'Alabama; dovrai cercare il codice FIPS dell'Alabama in una delle fonti online che hai visto - Imposta l'indice del DataFrame come concatenazione delle colonne
stateezcta. Usainplace = Trueper non creare un nuovo DataFrame.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# 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())