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
Lepaskan: 2024-10-29 04:43:02
asal
551 orang telah melayarinya

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>
Salin selepas log masuk

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

<code class="python">df['code'] = df.cc.codes</code>
Salin selepas log masuk

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>
Salin selepas log masuk
  • Untuk menggunakan lajur kategori sebagai indeks:
<code class="python">df2 = pd.DataFrame(df.temp)
df2.index = pd.CategoricalIndex(df.cc)</code>
Salin selepas log masuk

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 Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan