Kom igångKom igång gratis

Beräkna D i en loop

Är Georgias dissimilaritetsindex på 0,544 högt eller lågt? Låt oss jämföra det med Illinois (FIPS = 17), hemstat för Chicago.

I den här övningen använder vi en loop för att beräkna \(D\) för alla delstater och sedan jämföra Georgia och Illinois.

Kom ihåg att formeln för dissimilaritetsindexet är:

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

pandas har importerats med det vanliga aliaset och tracts-dataframen med befolkningskolumnerna "white" och "black" har lästs in. Variablerna w och b har definierats med kolumnnamnen "white" och "black".

Den här övningen är en del av kursen

Analys av amerikansk folkräkningsdata i Python

Visa kurs

Övningsinstruktioner

  • Använd metoden unique() på kolumnen "state" för att skapa en lista med delstaternas FIPS-koder.
  • Använd en for-loop för att lagra varje element i states (det vill säga varje FIPS-kod) i en variabel med namnet state.
  • Filtrera tracts-dataframen på varje värde av state och tilldela resultatet till tmp.
  • Beräkna \(D\) för varje delstat genom att tillämpa formeln på tmp och lagra resultatet i ordboken state_D.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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))
Redigera och kör kod