Kom igångKom igång gratis

Sammanfoga census-områden och storstadsområden

För att du ska kunna fokusera på hur metoden merge fungerar har en funktion som beräknar dissimilaritetsindexet redan tillhandahållits. (Du skapar den här funktionen själv i nästa övning!)

För att använda funktionen behöver du lägga till MSA-identifierare i DataFrame:n tracts. Du använder state och county, som finns i båda DataFrames, som nycklar för sammanslagningen. I slutet använder du seaborns metod stripplot för att visa de tio mest segregerade storstadsområdena.

DataFrame:n tracts som du använt tidigare är laddad. Befolkningsdata per MSA är laddad som msa, och de första raderna visas i konsolen. Slutligen är msa_def laddad med de counties som ingår i respektive MSA.

pandas och seaborn har laddats med de vanliga aliasen.

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

Analys av amerikansk folkräkningsdata i Python

Visa kurs

Övningsinstruktioner

  • Använd metoden nlargest på DataFrame:n msa för att returnera de 50 största storstadsområdena efter "population".
  • Både tracts och msa_def har kolumnerna "state" och "county". Använd metoden merge med parametern on för att slå samman på dessa kolumner.
  • Använd metoden merge för att slå samman msa och msa_D på MSA-identifieraren.

Interaktiv övning med praktiskt arbete

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

# Find identifiers for 50 largest metros by population
msa50 = list(msa.____["msa"])

# Join MSA identifiers to tracts, restrict to largest 50 metros
msa_tracts = pd.merge(____, ____, on = ____)
msa_tracts = msa_tracts[msa_tracts["msa"].isin(msa50)]

# Calculate D using custom function, merge back into MSA
msa_D = dissimilarity(msa_tracts, "white", "black", "msa")
msa = pd.merge(msa, msa_D, ____, ____)

# Plot ten most segregated metros
sns.stripplot(x = "D", y = "name", data = msa.nlargest(10, "D"))
plt.show()
Redigera och kör kod