Od API k vizualizaci: skupinové ubytování
V tomto cvičení se podíváš na to, kde jsou umístěni mladiství pachatelé. Cvičení představuje koncept populací ve „skupinovém ubytování" (group quarters), kam patří například koleje, nápravná zařízení, pečovatelské domy, vojenské základny apod.
Visualizuješ procentuální podíl uvězněných nezletilých mužů v dospělých nápravných zařízeních podle jednotlivých států. Proměnné, které si vyžádáš, jsou:
- PCT021005 – Muži: do 18 let: Institucionalizovaná populace: Nápravná zařízení pro dospělé
- PCT021015 – Muži: do 18 let: Institucionalizovaná populace: Zařízení pro mladistvé: Nápravná zařízení určená pro mladistvé
requests je již importován. base_url pro API požadavek je definována.
pandas a seaborn jsou importovány pod obvyklými aliasy.
Toto cvičení je součástí kurzu
Analýza dat amerického sčítání lidu v Pythonu
Pokyny k cvičení
- Doplň seznam
get_varso dvě požadované proměnné - Pomocí
astypepřeveď sloupcein_adultain_juvenilena celá čísla (integer) - Vypočítej procentuální podíl nezletilých v nápravných zařízeních pro dospělé: čitatel má být 100násobek počtu nezletilých v zařízeních
in_adult; jmenovatel má být součet nezletilých v zařízeníchin_adultain_juvenile - Seřaď
statespodle sloupcepct_in_adultsestupně s použitíminplace = True
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Specify variables and execute API request
get_vars = ["NAME", ____]
predicates["get"] = ",".join(get_vars)
r = requests.get(base_url, params=predicates)
# Construct DataFrame
col_names = ["name", "in_adult", "in_juvenile", "state"]
states = pd.DataFrame(columns=col_names, data=r.json()[1:])
states[["in_adult", "in_juvenile"]] = states[["in_adult", "in_juvenile"]].____
# Calculate percentage of incarcerated male minors in adult facilities
states["pct_in_adult"] = ____
states.sort_values(by = ____, ascending = ____, inplace = ____)
sns.stripplot(x = "pct_in_adult", y = "name", data = states)
plt.show()