LoslegenKostenlos loslegen

D in einer Schleife berechnen

Ist Georgias Index of Dissimilarity von 0,544 hoch oder niedrig? Vergleichen wir ihn mit Illinois (FIPS = 17), der Heimat von Chicago.

In dieser Übung verwenden wir eine Schleife, um \(D\) für alle Bundesstaaten zu berechnen und vergleichen anschließend Georgia und Illinois.

Denk daran, dass die Formel für den Index of Dissimilarity lautet:

$$D = \frac{1}{2}\sum{\left\lvert \frac{a}{A} - \frac{b}{B} \right\rvert}$$

pandas wurde mit dem üblichen Alias importiert, und das DataFrame tracts mit den Bevölkerungs-Spalten "white" und "black" wurde geladen. Die Variablen w und b wurden mit den Spaltennamen "white" und "black" definiert.

Diese Übung ist Teil des Kurses

Analyse von US-Volkszählungsdaten mit Python

Kurs anzeigen

Anleitung zur Übung

  • Verwende die Methode unique() auf der Spalte "state", um eine Liste der FIPS-Codes der Bundesstaaten zu erstellen.
  • Nutze eine for-Schleife, um jedes Element von states (also jeden FIPS-Code) in einer Variablen state zu speichern.
  • Filtere das DataFrame tracts für jeden Wert von state und weise das Ergebnis tmp zu.
  • Berechne \(D\) für jeden Bundesstaat, indem du die Formel auf tmp anwendest, und speichere das Ergebnis im Dictionary state_D.

Interaktive Übung

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

# Get list of state FIPS Codes
states = list(tracts["state"].____)

state_D = {}  # Initialize dictionary as collector
for state in ____:
    # Filter by state
    tmp = ____
    
    # Add Index of Dissimilarity to Dictionary
    state_D[state] = 0.5 * sum(____)

# Print D for Georgia (FIPS = 13) and Illinois (FIPS = 17)    
print("Georgia D =", round(state_D["13"], 3))
print("Illinois D =", round(state_D["17"], 3))
Code bearbeiten und ausführen