Lewati ke konten utama

Menguasai Metode Pandas .explode(): Panduan Komprehensif

Pelajari semua yang perlu Anda ketahui tentang metode pandas .explode(), mencakup kolom tunggal dan ganda, penanganan data bertingkat, serta jebakan umum dengan contoh kode Python praktis.
Diperbarui 28 Sep 2026  · 5 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

Di dunia manipulasi data dengan pandas, metode .explode() sering menjadi alat yang berguna saat bekerja dengan daftar dalam DataFrame. Tutorial ini berfungsi sebagai buku pegangan untuk menguasai metode .explode(), mulai dari mekanisme dasarnya hingga penerapan lanjutan dan jebakan umum.

Jawaban Singkat: Begini Cara Kerja .explode()

Jika Anda mencari jawaban cepat, baca bagian ini saja. Metode .explode() dirancang untuk memperluas entri pada kolom mirip daftar ke beberapa baris, sehingga setiap elemen dalam daftar menjadi baris terpisah. Sebagai contoh, kita akan menggunakan DataFrame df berikut untuk menggambarkan prosesnya:

ID

Minat

1

['Python', 'Data Science']

2

['Machine Learning', 'AI']

Metode .explode() akan memperluas elemen pada kolom Interests, seperti berikut:

# Explode the Interests column 
exploded_df = df.explode('Interests')

ID

Minat

1

Python

1

Data Science

2

Machine Learning

2

AI

Apa itu Metode Pandas .explode()?

Metode .explode() dirancang untuk menyederhanakan penanganan data bertingkat, seperti daftar atau tuple, di dalam pandas DataFrame. Dengan mengubah setiap elemen dari struktur mirip daftar menjadi baris terpisah, .explode() meningkatkan keteraksesan data dan kesiapan analisis.

Bagaimana Cara Kerja Metode .explode()?

Fungsionalitas .explode() kuat sekaligus mudah dipahami, dengan fokus pada kemudahan penggunaan dan efisiensi dalam tugas manipulasi data.

  • Column: Menentukan kolom dengan entri mirip daftar yang akan di-explode.
  • ignore_index: Jika disetel ke True, metode ini mengatur ulang indeks ke indeks bilangan bulat default, membantu menjaga integritas DataFrame setelah proses explode. Nilai default adalah False.

Dua cara menggunakan metode Pandas .explode()

Melakukan Explode pada Satu Kolom di Pandas

Kasus penggunaan yang paling umum melibatkan explode pada satu kolom, sehingga setiap entri mirip daftar diperluas menjadi baris-baris terpisah. Pada bagian jawaban singkat, kita membahas hal ini persis. Mari kita tinjau kembali contoh ini. Di sini kita memiliki DataFrame df, yang memuat ID individu & minat belajarnya. Seperti yang Anda lihat, minat belajar diformat sebagai daftar.

ID

Minat

1

['Python', 'Data Science']

2

['Machine Learning', 'AI']

Metode .explode() akan memperluas elemen pada kolom Interests menjadi baris-baris terpisah seperti berikut:

# Explode the Interests column 
exploded_df = df.explode('Interests')

ID

Minat

1

Python

1

Data Science

2

Machine Learning

2

AI

Metode ini sangat berguna untuk kolom yang memuat data kategorikal atau beberapa atribut per observasi.

Melakukan Explode pada Beberapa Kolom di Pandas

Anda juga mungkin menemui skenario di mana Anda harus melakukan explode pada beberapa kolom dalam sebuah DataFrame. Ini sangat berguna ketika berhadapan dengan dataset di mana beberapa kolom berisi struktur mirip daftar yang perlu dibuka secara bersamaan. Mari tambahkan kolom Tools ke df untuk mengilustrasikannya:

ID

Minat

Alat

1

['Python', 'Data Science']

['Pandas', 'NumPy']

2

['Machine Learning', 'AI']

['Scikit-learn', 'TensorFlow']

Untuk melakukan explode pada beberapa kolom, cukup sertakan kolom-kolom yang ditentukan dalam sebuah daftar

# Explode the Interests & Tools columns
exploded_df = df.explode(['Interests', 'Tools'])

ID

Minat

Alat

1

Python

Pandas

1

Data Science

NumPy

2

Machine Learning

Scikit-learn

2

AI

TensorFlow

Metode ini sangat berguna saat bekerja dengan beberapa kolom yang berisi daftar. Meski begitu, ada beberapa jebakan yang mungkin Anda temui saat bekerja dengan.explode(), yang akan kita bahas pada bagian berikut.

Kesalahan Umum Saat Menggunakan Pandas .explode() dan Solusinya

Kolom Duplikat Ter-explode

Jebakan umum saat bekerja dengan .explode() adalah tanpa sengaja melakukan explode pada kolom duplikat saat menggunakan metode ini. Sebagai pengingat, pastikan selalu daftar kolom yang Anda sertakan bersifat unik!

# Incorrect, exploding duplicate columns
df.explode(['Interests','Tools','Interests'])

# Correct, exploding unique columns
df.explode(['Interests','Tools'])

Melakukan Explode pada String yang Terlihat Seperti Daftar

Sering kali, Anda mungkin memiliki baris di DataFrame yang berupa string tetapi terlihat seperti daftar. Mencoba melakukan explode pada kolom dengan string yang menyerupai daftar, seperti "['Python', 'AI']", tidak menghasilkan perubahan karena metode .explode() mengharapkan objek mirip daftar yang sebenarnya, bukan string yang terlihat seperti daftar. Berikut contoh seperti apa bentuknya dan solusinya! Misalkan df memiliki nilai berikut:

ID

Minat

1

"['Python', 'Data Science']"

2

"['Machine Learning', 'AI']"

Seperti yang terlihat, kolom Interests memiliki nilai berupa string yang terlihat seperti daftar. Menggunakan .explode() pada Interests tidak akan menghasilkan perubahan karena nilainya adalah string tunggal. Untuk memperbaikinya, kita mengonversi nilai pada Interests menjadi daftar.

import ast

df['Interests'] = df['Interests'].apply(ast.literal_eval)
exploded_df = df.explode('Interests')
print(exploded_df) # This will work

Panjang Tidak Cocok pada Beberapa Kolom

Saat bekerja dengan pandas DataFrame, jebakan umum adalah menemui baris di mana struktur mirip daftar pada kolom yang ditentukan untuk explode memiliki panjang yang tidak cocok. Ketidaksesuaian ini dapat menyebabkan data tidak sejajar atau tidak lengkap setelah menggunakan metode .explode() pada beberapa kolom. Sebagai contoh, bayangkan df seperti berikut:

ID

Minat

Alat

1

['Python', 'Data Science']

['Pandas']

2

['Machine Learning']

['Scikit-learn', 'TensorFlow']

Seperti terlihat, kolom Interests dan Tools berisi daftar dengan panjang berbeda. Menggunakan .explode() pada kolom-kolom ini apa adanya akan menghasilkan galat, karena kolom harus memiliki jumlah nilai yang sama dalam daftar. Untuk memperbaikinya, Anda dapat menambah daftar dengan None menggunakan fungsi kustom, seperti berikut:

​​# Function to pad lists to the same length
def pad_lists(row):
    max_len = max(len(row['Interests']), len(row['Tools']))
    row['Interests'] += [None] * (max_len - len(row['Interests']))
    row['Tools'] += [None] * (max_len - len(row['Tools']))
    return row

# Apply the padding function to each row
df = df.apply(pad_lists, axis=1)

# Now, safely explode both columns
df.explode(['Interests','Tools'])

ID

Minat

Alat

1

Python

Pandas

1

Data Science

None

2

Machine Learning

Scikit-learn

2

None

TensorFlow

Penutup

Singkatnya, metode .explode() adalah metode yang berguna saat membongkar elemen dalam daftar nilai menjadi baris pada Pandas DataFrame. Untuk pembelajaran pandas lebih lanjut, lihat sumber berikut:


Adel Nehme's photo
Author
Adel Nehme
LinkedIn

Adel adalah pendidik Data Science, pembicara, dan VP Media di DataCamp. Adel telah merilis berbagai kursus dan pelatihan langsung tentang analisis data, machine learning, dan rekayasa data. Ia bersemangat menyebarkan keterampilan dan literasi data di seluruh organisasi serta mengeksplorasi persinggungan teknologi dan masyarakat. Ia meraih gelar MSc di bidang Data Science dan Business Analytics. Di waktu luang, Anda bisa menemukannya bersantai bersama kucingnya, Louis.

Topik
Python

Mulai Perjalanan Anda dengan Pandas Hari Ini!

Kursus

Manipulasi Data dengan pandas

4 jam
566.8K
Pelajari cara mengimpor dan membersihkan data, menghitung statistik, serta membuat visualisasi dengan pandas.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

Lihat SelengkapnyaLihat Selengkapnya