Začněte nyníZačněte zdarma

Spojení census tractů a metropolitních oblastí

Abys mohl/a lépe pochopit, jak funguje metoda merge, je pro tebe připravena funkce, která počítá Index nepodobnosti. (Tuto funkci si sám/sama napíšeš v dalším cvičení!)

Pro použití této funkce musíš přidat identifikátory MSA do DataFrame tracts. Jako klíče pro spojení použiješ sloupce state a county, které jsou přítomné v obou DataFramech. Na závěr využiješ metodu stripplot z knihovny seaborn k zobrazení deseti nejvíce segregovaných metropolitních oblastí.

DataFrame tracts, který jsi používal/a dříve, je načtený. Populační data podle MSA jsou načtená jako msa a první řádky jsou zobrazeny v konzoli. Dále je načtený msa_def s okresy, které tvoří jednotlivé MSA.

pandas a seaborn jsou načtené s obvyklými aliasy.

Toto cvičení je součástí kurzu

Analýza dat amerického sčítání lidu v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Použij metodu nlargest na DataFrame msa, aby ses vrátil/a 50 největších metropolitních oblastí podle "population".
  • DataFrame tracts i msa_def mají sloupce "state" a "county". Použij metodu merge s parametrem on pro spojení podle těchto sloupců.
  • Použij metodu merge ke spojení msa a msa_D podle identifikátoru MSA.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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()
Upravit a spustit kód