Inizia subitoInizia gratis

Calcolare D in un ciclo

L'Index of Dissimilarity della Georgia pari a 0,544 è alto o basso? Confrontiamolo con l'Illinois (FIPS = 17), dove si trova Chicago.

In questo esercizio useremo un ciclo per calcolare \(D\) per tutti gli stati, poi confronteremo Georgia e Illinois.

Ricorda che la formula dell'Index of Dissimilarity è:

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

pandas è stato importato con il solito alias, e il DataFrame tracts con le colonne di popolazione "white" e "black" è stato caricato. Le variabili w e b sono state definite con i nomi di colonna "white" e "black".

Questo esercizio fa parte del corso

Analizzare i dati del Censimento USA con Python

Visualizza corso

Istruzioni dell'esercizio

  • Usa il metodo unique() sulla colonna "state" per creare un elenco di codici FIPS degli stati.
  • Usa un ciclo for per memorizzare ciascun elemento di states (cioè ogni codice FIPS) in una variabile chiamata state.
  • Filtra il DataFrame tracts in base a ciascun valore di state e assegna il risultato a tmp.
  • Calcola \(D\) per ogni stato applicando la formula a tmp e salva il risultato nel dizionario state_D.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# 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))
Modifica ed esegui il codice