Zone de tabulare după cod poștal
În domeniul marketingului, este foarte frecvent să vrei să cunoști datele demografice asociate codurilor poștale. Zonele de tabulare după cod poștal ("ZCTA") sunt echivalentele definite de Census pentru codurile poștale, construite pe baza blocurilor de recensământ. În acest exercițiu vei solicita populația totală pentru toate ZCTA-urile din statul Alabama.
În pandas, un index poate fi folosit pentru a accesa anumite rânduri. GEOID-urile sunt identificatori de rând potriviți. În acest exercițiu vei seta un index pe mai multe niveluri, bazat pe statul și ZCTA-ul fiecărui rând.
Bibliotecile requests și pandas au fost deja importate. base_url este definit, la fel și dicționarul predicates cu lista de variabile de solicitat.
Acest exercițiu face parte din cursul
Analiza datelor recensământului SUA în Python
Instrucțiuni pentru exercițiu
- Setează cheia
"for"din dicționarulpredicatespentru a returna toate ZCTA-urile; scrie denumirea geografiei în întregime:"zip code tabulation area (or part)"" - Setează cheia
"in"din dicționarulpredicatespentru a returna doar ZCTA-urile din statul Alabama; va trebui să cauți codul FIPS pentru Alabama într-una dintre sursele online despre care ai aflat - Setează indexul DataFrame-ului ca fiind concatenarea coloanelor
stateșizcta. Foloseșteinplace = Truepentru a nu crea un DataFrame nou.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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())