LoslegenKostenlos loslegen

API bis Visualisierung: Gemeinschaftsunterkünfte

In dieser Übung untersuchst du, wo jugendliche Straftäter inhaftiert sind. Dabei lernst du das Konzept der Bevölkerung in "group quarters" kennen, also in Gemeinschaftsunterkünften wie College-Wohnheimen, Justizvollzugsanstalten, Pflegeheimen, Militärstützpunkten usw.

Du visualisierst den prozentualen Anteil, nach Bundesstaat, der inhaftierten minderjährigen Jungen in Erwachsenen-Justizvollzugsanstalten. Die anzufordernden Variablen sind:

  • PCT021005 - Männlich: unter 18 Jahre: institutionalisierte Bevölkerung: Justizvollzugsanstalten für Erwachsene
  • PCT021015 - Männlich: unter 18 Jahre: institutionalisierte Bevölkerung: Jugendheime: Justizvollzugsanstalten für Jugendliche

requests wurde importiert. Die base_url für die API-Anfrage wurde definiert.

pandas und seaborn wurden mit den üblichen Aliasen importiert.

Diese Übung ist Teil des Kurses

Analyse von US-Volkszählungsdaten mit Python

Kurs anzeigen

Anleitung zur Übung

  • Vervollständige die Liste get_vars mit den beiden gewünschten Variablen
  • Verwende astype, um die Spalten in_adult und in_juvenile in Integer zu konvertieren
  • Berechne den Prozentsatz der Minderjährigen in Justizvollzugsanstalten für Erwachsene: Der Zähler ist 100-mal die Anzahl der Minderjährigen in in_adult-Justizvollzugsanstalten; der Nenner ist die Summe der Minderjährigen in in_adult- und in_juvenile-Justizvollzugsanstalten
  • Sortiere states nach pct_in_adult in absteigender Reihenfolge und verwende inplace = True

Interaktive Übung

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

# 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()
Code bearbeiten und ausführen