Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana dengan cekap menukar data kategori kepada indeks berangka dalam Pandas?

Bagaimana dengan cekap menukar data kategori kepada indeks berangka dalam Pandas?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-29 04:43:02509semak imbas

How to efficiently convert categorical data to numerical indices in Pandas?

Panda: Penukaran Kategori kepada Indeks Berangka

Untuk menukar kategori dalam bingkai data Pandas kepada indeks berangka, kita boleh mengikut kaedah cekap yang disediakan oleh pengguna:

Langkah 1: Kategorikan Lajur
Pertama sekali, tukar lajur sasaran (dalam kes ini, cc) kepada jenis kategori:

<code class="python">df.cc = pd.Categorical(df.cc)</code>

Langkah 2: Tangkap Kod Kategori
Buat lajur baharu bernama kod untuk menyimpan kod kategori:

<code class="python">df['code'] = df.cc.codes</code>

Hasil:

Bingkai data kini termasuk lajur kod dengan indeks yang sepadan dengan kategori:

cc temp code
US 37.0 2
CA 12.0 1
US 35.0 2
AU 20.0 0

Pilihan Tambahan:

  • Untuk mendapatkan semula kod tanpa mengubah suai DataFrame:
<code class="python">df.cc.astype('category').codes</code>
  • Untuk menggunakan lajur kategori sebagai indeks:
<code class="python">df2 = pd.DataFrame(df.temp)
df2.index = pd.CategoricalIndex(df.cc)</code>

Atas ialah kandungan terperinci Bagaimana dengan cekap menukar data kategori kepada indeks berangka dalam Pandas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn