MulaiMulai sekarang secara gratis

Menggabungkan Tract dan Wilayah Metropolitan

Agar dapat berfokus pada cara kerja metode merge, sebuah fungsi untuk menghitung Index of Dissimilarity telah disediakan untuk Anda. (Anda akan membuat fungsi ini sendiri pada latihan berikutnya!)

Untuk menerapkan fungsi ini, Anda perlu menambahkan pengenal MSA ke DataFrame tracts. Anda akan menggunakan state dan county, yang ada di kedua DataFrame, sebagai kunci penggabung. Pada akhirnya, Anda akan menggunakan metode stripplot dari seaborn untuk menampilkan sepuluh wilayah metro dengan segregasi tertinggi.

DataFrame tracts yang telah Anda gunakan sebelumnya sudah dimuat. Data populasi per MSA dimuat sebagai msa, dan beberapa baris pertama ditampilkan di konsol. Terakhir, msa_def dimuat dengan daftar county yang membentuk setiap MSA.

pandas dan seaborn telah dimuat dengan alias yang biasa digunakan.

Latihan ini adalah bagian dari kursus

Menganalisis Data Sensus AS dengan Python

Lihat Kursus

Petunjuk latihan

  • Gunakan metode nlargest pada DataFrame msa untuk mengembalikan 50 wilayah metro terbesar berdasarkan "population".
  • tracts dan msa_def sama-sama memiliki kolom "state" dan "county". Gunakan metode merge dengan parameter on untuk menggabungkan berdasarkan kolom-kolom tersebut.
  • Gunakan metode merge untuk menggabungkan msa dan msa_D pada pengenal MSA.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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()
Edit dan Jalankan Kode