MulaiMulai sekarang secara gratis

Arus Antarnegara Bagian

Dalam video, Anda melihat heatmap arus migrasi antarnegara bagian, tetapi tampilannya terlalu padat. Pada latihan ini, Anda hanya akan melihat arus yang terjadi di dalam wilayah Midwest.

Sebuah DataFrame state_to_state telah dimuat, dan beberapa baris pertamanya ditampilkan di konsol. Ingat dari video bahwa label baris menunjukkan negara bagian yang menjadi tujuan pindah (to), sementara nama kolom menunjukkan negara bagian asal pindah (from).

Sebuah daftar midwest_states telah didefinisikan berisi nama negara bagian di wilayah Midwest. (Cetak ke konsol jika Anda ingin melihat negara bagian apa saja yang termasuk.) DataFrame juga menggunakan nama negara bagian untuk nama kolom dan indeks, sehingga Anda akan menggunakan midwest_states untuk mengekstrak kolom dan baris yang ingin digunakan untuk heatmap ini.

pandas dan seaborn telah diimpor menggunakan alias yang biasa digunakan.

Latihan ini adalah bagian dari kursus

Menganalisis Data Sensus AS dengan Python

Lihat Kursus

Petunjuk latihan

  • Subset data frame untuk mengembalikan hanya kolom yang sesuai dengan daftar nama negara bagian, dan hanya baris yang indeksnya ada dalam daftar nama negara bagian.
  • Subsetting mungkin telah mengubah urutan kolom dan baris. Periksa apakah midwest.index sama dengan midwest.columns.
  • Urutkan DataFrame berdasarkan indeks baris (axis = 0) dan nama kolom (axis = 1). Gunakan inplace = True pada keduanya.
  • Buat heatmap dari midwest. Terapkan gradasi warna kuning-hijau-biru dengan cmap="YlGnBu".

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Retain only rows and columns of Midwest states
midwest = state_to_state[____][state_to_state.index.isin(____)]

# Are rows and columns still in the same order?
print(____)

# Sort the rows (by index) and columns (by name)
midwest.sort_index(axis = ____, ____)
midwest.sort_index(axis = ____, ____)

# Create a heatmap of migration flows
____
plt.xticks(rotation=90)
plt.yticks(rotation=0)
plt.show()
Edit dan Jalankan Kode