5 Cara Reset Index DataFrame di Pandas dan Contohnya

Pelajari berbagai cara reset index DataFrame di Pandas, lengkap dengan contohnya.
RevoU Staff
June 16, 2024
5
min read

Mau Belajar

Data Analytics

?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!
DAFTAR FULL PROGRAMCOBA COURSE GRATIS

Overview

Fungsi reset_index() di Pandas digunakan untuk mengatur ulang indeks DataFrame ke indeks default, yang merupakan indeks numerik mulai dari 0, atau untuk mengubah indeks multi-level. Fungsi ini memungkinkan pengembalian indeks yang ada ke dalam kolom DataFrame jika parameter drop disetel menjadi False, menjaga integritas data sambil memfasilitasi manipulasi lebih lanjut.

Dalam library Pandas, terdapat sebuah fungsi yang sering terlihat sederhana namun memiliki peran penting: reset_index().

Fungsi ini bukan hanya tentang mengatur ulang indeks–namun juga tentang memulihkan struktur data ke bentuk paling mendasar, memungkinkan manipulasi lebih lanjut yang lebih bersih dan terorganisasi.

Secara default, setiap DataFrame memiliki indeks yang membantu mengidentifikasi setiap baris data secara unik. Namun, ada kalanya indeks ini perlu diatur ulang, misalnya setelah kamu melakukan pengurutan atau pemfilteran data, sehingga indeks tidak lagi berurutan.

Di artikel ini, kita akan menyelami bagaimana reset_index() bekerja, mengapa fungsi ini begitu vital dalam proses analisis data, dan bagaimana cara memanfaatkannya untuk memaksimalkan pengelolaan dataset kamu. Selamat membaca!

Reset Index Syntax

Fungsi reset_index() di Pandas memiliki syntax dan beberapa parameter yang dapat dikonfigurasi, guna memenuhi berbagai kebutuhan saat mengatur ulang indeks DataFrame. Berikut penjelasan lengkap tentang syntax dan parameter fungsi ini:

Parameter:

  • level: parameter ini digunakan untuk menentukan level atau tingkatan indeks yang ingin di-reset. Jika DataFrame memiliki multi-level index (indeks bertingkat), kamu bisa memilih level mana yang akan di-reset. Jika tidak diisi, semua level akan di-reset.
  • drop: bila diatur menjadi True, kolom indeks yang di-reset tidak akan ditambahkan kembali ke DataFrame sebagai kolom data; melainkan dihilangkan. Jika False, indeks yang di-reset akan dijadikan kolom biasa dalam DataFrame.
  • Inplace: jika nilai dari inplace adalah True, perubahan pada DataFrame akan dilakukan inplace, atau langsung pada DataFrame tersebut tanpa membuat salinan baru. Jika False, perubahan akan menghasilkan salinan baru dan DataFrame asli tidak berubah.
  • col_level: dipakai jika kamu memiliki kolom bertingkat (multi-level column) dan ingin menentukan di level mana kolom yang di-reset akan ditambahkan.
  • col_fill: bila DataFrame memiliki multi-level column, parameter ini digunakan untuk mengisi nama kolom untuk level yang tidak memiliki nama.

Return:

Fungsi reset_index() mengembalikan DataFrame baru dengan indeks yang telah diatur ulang, kecuali jika inplace=True, di mana tidak ada nilai yang dikembalikan karena perubahan telah dilakukan langsung pada DataFrame yang ada.

Cara dan Contoh Metode Reset Index di Pandas

Misalnya, kamu memiliki dataset awal sebagai berikut:

#1 Membuat indeks sendiri tanpa menghapus indeks default

Kamu ingin menambahkan kolom indeks baru tanpa menghapus indeks default.

Cara:

Output:

#2 Membuat indeks sendiri dan menghapus indeks default

Kamu bisa mengatur ulang indeks sambil menghapus indeks yang ada.

Cara:

Output:

#3 Mengatur ulang indeks sendiri dan membuat indeks default sebagai indeks

Kamu juga bisa mengatur ulang indeks dan memulihkan indeks default sebagai indeks utama.

Cara:

Output:

#4 Menjadikan kolom DataFrame sebagai indeks dan menghapus indeks default

Sebagai contoh, kamu ingin menjadikan kolom 'A' sebagai indeks dan menghapus indeks default.

Cara:

Output:

#5 Menjadikan kolom DataFrame sebagai indeks tanpa menghapus indeks

Contoh lainnya yaitu mengatur kolom 'A' sebagai indeks tanpa menghapus indeks yang ada.

Cara:

Output:

Kombinasi Group By dan Reset Index

Kita biasanya juga perlu mengelompokkan data berdasarkan beberapa kriteria, kemudian mereset indeks untuk membuat data lebih terstruktur dan mudah diakses.

Kombinasi penggunaan groupby dan reset_index di Pandas adalah teknik yang sangat berguna dalam mengolah data agregat dan mempersiapkannya untuk analisis lebih lanjut.

Mari kita buat contoh penggunaan kombinasi groupby dan reset_index menggunakan contoh dataset di atas. Kita akan mengelompokkan data berdasarkan kolom Kota, lalu menghitung rata-rata pendapatan di masing-masing kota. Setelah itu, kita akan menggunakan reset_index untuk mengembalikan DataFrame ke indeks numerik yang standar.

Pertama, kita perlu mengimpor library Pandas dan membuat DataFrame dari data yang diberikan.

Kita akan mengelompokkan data berdasarkan Kota dan menghitung rata-rata pendapatan di setiap kota.

Hasilnya, grouped_df akan menjadi Series dengan Kota sebagai indeks dan rata-rata pendapatan sebagai nilai.

Untuk mengubah Series kembali ke DataFrame dan mengembalikan indeks ke bentuk standar:

Output reset_df akan menjadi DataFrame dengan indeks numerik dan kolom untuk Kota serta rata-rata Pendapatan.

Output:

FAQs (Frequently Asked Questions)

Bagaimana cara mempertahankan kolom indeks lama setelah reset_index()?

Untuk mempertahankan kolom indeks lama setelah menggunakan reset_index() pada DataFrame di Pandas, kamu perlu mengatur parameter drop menjadi False.

Secara default, parameter ini diatur sebagai False, jadi jika kamu tidak menyebutkannya, indeks yang ada secara otomatis disimpan sebagai kolom biasa dalam DataFrame.

Apa perbedaan antara reset_index() dan set_index()? 

Perbedaan utama antara reset_index() dan set_index() dalam Pandas adalah kegunaan dan arah perubahan yang mereka lakukan pada indeks DataFrame.

Fungsi reset_index() dipakai untuk mengatur ulang indeks DataFrame ke indeks default, yaitu indeks numerik yang dimulai dari 0. Sementara itu, fungsi set_index() berguna untuk menetapkan satu atau lebih kolom sebagai indeks baru DataFrame.

Lebih lanjut, berikut tabel perbedaan keduanya:

Bagaimana cara menggunakan reset_index() pada DataFrame dengan multi-level index?

Ketika bekerja dengan DataFrame yang memiliki multi-level index (juga dikenal sebagai hierarchical index) di Pandas, fungsi reset_index() dapat digunakan untuk mengatur ulang satu atau lebih level dari indeks tersebut.

Ini memungkinkan kamu untuk menangani struktur data yang kompleks dengan lebih fleksibel.

Apakah menggunakan reset_index() dapat memengaruhi performa aplikasi?

Ya, menggunakan reset_index() pada DataFrame di Pandas bisa memengaruhi performa aplikasi, terutama dalam konteks tertentu, termasuk:

  • Penggunaan memori: mengatur ulang indeks biasanya memerlukan pembuatan salinan data. Jika drop=False, yang mana adalah setting default, indeks lama akan ditambahkan ke DataFrame sebagai kolom baru. Artinya, lebih banyak memori akan digunakan karena data tambahan disimpan dalam bentuk kolom.
  • Waktu proses: proses mengatur ulang indeks melibatkan rekonstruksi struktur DataFrame. Untuk DataFrame besar, ini bisa menjadi operasi yang berat dan memakan waktu, terutama jika dilakukan berulang kali dalam suatu loop atau dalam aplikasi yang membutuhkan respons real time.
  • Efisiensi komputasi: secara default, reset_index() mengembalikan DataFrame baru, kecuali jika inplace=True diatur. Membuat DataFrame baru bisa menjadi operasi yang mahal dalam hal komputasi dan penggunaan sumber daya, terutama dengan data besar atau kompleks (seperti multi-level index).

Tips untuk meningkatkan performa:

  • Menggunakan inplace=True: jika kamu tidak membutuhkan salinan dari DataFrame asli dan hanya ingin memodifikasi DataFrame yang ada, menggunakan inplace=True dapat mengurangi overhead memori dengan tidak membuat salinan baru.
  • Meminimalkan penggunaan: pertimbangkan kebutuhan untuk mengatur ulang indeks. Jika bisa dihindari atau digantikan dengan operasi lain yang lebih efisien, hal itu mungkin lebih baik untuk performa.
  • Mengelola level indeks: jika bekerja dengan multi-level index, mengatur ulang hanya level tertentu yang diperlukan daripada seluruh set indeks dapat mengurangi overhead.
RevoU Staff
Kickstart your career in tech with RevoU!

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program: Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion. Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program: Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion. Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program: Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion. Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Artikel Lainnya

Mau belajar

Data Analytics

?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!
Daftar Isi

Mulai karirmu dalam

Data Analytics

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!

Mau Belajar

Data Analytics

?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!

DAFTAR FULL PROGRAM

Mau Belajar

Data Analytics

?

5 Cara Reset Index DataFrame di Pandas dan Contohnya

Pelajari berbagai cara reset index DataFrame di Pandas, lengkap dengan contohnya.
RevoU Staff
June 16, 2024
5
min read

Overview

Fungsi reset_index() di Pandas digunakan untuk mengatur ulang indeks DataFrame ke indeks default, yang merupakan indeks numerik mulai dari 0, atau untuk mengubah indeks multi-level. Fungsi ini memungkinkan pengembalian indeks yang ada ke dalam kolom DataFrame jika parameter drop disetel menjadi False, menjaga integritas data sambil memfasilitasi manipulasi lebih lanjut.

Dalam library Pandas, terdapat sebuah fungsi yang sering terlihat sederhana namun memiliki peran penting: reset_index().

Fungsi ini bukan hanya tentang mengatur ulang indeks–namun juga tentang memulihkan struktur data ke bentuk paling mendasar, memungkinkan manipulasi lebih lanjut yang lebih bersih dan terorganisasi.

Secara default, setiap DataFrame memiliki indeks yang membantu mengidentifikasi setiap baris data secara unik. Namun, ada kalanya indeks ini perlu diatur ulang, misalnya setelah kamu melakukan pengurutan atau pemfilteran data, sehingga indeks tidak lagi berurutan.

Di artikel ini, kita akan menyelami bagaimana reset_index() bekerja, mengapa fungsi ini begitu vital dalam proses analisis data, dan bagaimana cara memanfaatkannya untuk memaksimalkan pengelolaan dataset kamu. Selamat membaca!

Reset Index Syntax

Fungsi reset_index() di Pandas memiliki syntax dan beberapa parameter yang dapat dikonfigurasi, guna memenuhi berbagai kebutuhan saat mengatur ulang indeks DataFrame. Berikut penjelasan lengkap tentang syntax dan parameter fungsi ini:

Parameter:

  • level: parameter ini digunakan untuk menentukan level atau tingkatan indeks yang ingin di-reset. Jika DataFrame memiliki multi-level index (indeks bertingkat), kamu bisa memilih level mana yang akan di-reset. Jika tidak diisi, semua level akan di-reset.
  • drop: bila diatur menjadi True, kolom indeks yang di-reset tidak akan ditambahkan kembali ke DataFrame sebagai kolom data; melainkan dihilangkan. Jika False, indeks yang di-reset akan dijadikan kolom biasa dalam DataFrame.
  • Inplace: jika nilai dari inplace adalah True, perubahan pada DataFrame akan dilakukan inplace, atau langsung pada DataFrame tersebut tanpa membuat salinan baru. Jika False, perubahan akan menghasilkan salinan baru dan DataFrame asli tidak berubah.
  • col_level: dipakai jika kamu memiliki kolom bertingkat (multi-level column) dan ingin menentukan di level mana kolom yang di-reset akan ditambahkan.
  • col_fill: bila DataFrame memiliki multi-level column, parameter ini digunakan untuk mengisi nama kolom untuk level yang tidak memiliki nama.

Return:

Fungsi reset_index() mengembalikan DataFrame baru dengan indeks yang telah diatur ulang, kecuali jika inplace=True, di mana tidak ada nilai yang dikembalikan karena perubahan telah dilakukan langsung pada DataFrame yang ada.

Cara dan Contoh Metode Reset Index di Pandas

Misalnya, kamu memiliki dataset awal sebagai berikut:

#1 Membuat indeks sendiri tanpa menghapus indeks default

Kamu ingin menambahkan kolom indeks baru tanpa menghapus indeks default.

Cara:

Output:

#2 Membuat indeks sendiri dan menghapus indeks default

Kamu bisa mengatur ulang indeks sambil menghapus indeks yang ada.

Cara:

Output:

#3 Mengatur ulang indeks sendiri dan membuat indeks default sebagai indeks

Kamu juga bisa mengatur ulang indeks dan memulihkan indeks default sebagai indeks utama.

Cara:

Output:

#4 Menjadikan kolom DataFrame sebagai indeks dan menghapus indeks default

Sebagai contoh, kamu ingin menjadikan kolom 'A' sebagai indeks dan menghapus indeks default.

Cara:

Output:

#5 Menjadikan kolom DataFrame sebagai indeks tanpa menghapus indeks

Contoh lainnya yaitu mengatur kolom 'A' sebagai indeks tanpa menghapus indeks yang ada.

Cara:

Output:

Kombinasi Group By dan Reset Index

Kita biasanya juga perlu mengelompokkan data berdasarkan beberapa kriteria, kemudian mereset indeks untuk membuat data lebih terstruktur dan mudah diakses.

Kombinasi penggunaan groupby dan reset_index di Pandas adalah teknik yang sangat berguna dalam mengolah data agregat dan mempersiapkannya untuk analisis lebih lanjut.

Mari kita buat contoh penggunaan kombinasi groupby dan reset_index menggunakan contoh dataset di atas. Kita akan mengelompokkan data berdasarkan kolom Kota, lalu menghitung rata-rata pendapatan di masing-masing kota. Setelah itu, kita akan menggunakan reset_index untuk mengembalikan DataFrame ke indeks numerik yang standar.

Pertama, kita perlu mengimpor library Pandas dan membuat DataFrame dari data yang diberikan.

Kita akan mengelompokkan data berdasarkan Kota dan menghitung rata-rata pendapatan di setiap kota.

Hasilnya, grouped_df akan menjadi Series dengan Kota sebagai indeks dan rata-rata pendapatan sebagai nilai.

Untuk mengubah Series kembali ke DataFrame dan mengembalikan indeks ke bentuk standar:

Output reset_df akan menjadi DataFrame dengan indeks numerik dan kolom untuk Kota serta rata-rata Pendapatan.

Output:

FAQs (Frequently Asked Questions)

Bagaimana cara mempertahankan kolom indeks lama setelah reset_index()?

Untuk mempertahankan kolom indeks lama setelah menggunakan reset_index() pada DataFrame di Pandas, kamu perlu mengatur parameter drop menjadi False.

Secara default, parameter ini diatur sebagai False, jadi jika kamu tidak menyebutkannya, indeks yang ada secara otomatis disimpan sebagai kolom biasa dalam DataFrame.

Apa perbedaan antara reset_index() dan set_index()? 

Perbedaan utama antara reset_index() dan set_index() dalam Pandas adalah kegunaan dan arah perubahan yang mereka lakukan pada indeks DataFrame.

Fungsi reset_index() dipakai untuk mengatur ulang indeks DataFrame ke indeks default, yaitu indeks numerik yang dimulai dari 0. Sementara itu, fungsi set_index() berguna untuk menetapkan satu atau lebih kolom sebagai indeks baru DataFrame.

Lebih lanjut, berikut tabel perbedaan keduanya:

Bagaimana cara menggunakan reset_index() pada DataFrame dengan multi-level index?

Ketika bekerja dengan DataFrame yang memiliki multi-level index (juga dikenal sebagai hierarchical index) di Pandas, fungsi reset_index() dapat digunakan untuk mengatur ulang satu atau lebih level dari indeks tersebut.

Ini memungkinkan kamu untuk menangani struktur data yang kompleks dengan lebih fleksibel.

Apakah menggunakan reset_index() dapat memengaruhi performa aplikasi?

Ya, menggunakan reset_index() pada DataFrame di Pandas bisa memengaruhi performa aplikasi, terutama dalam konteks tertentu, termasuk:

  • Penggunaan memori: mengatur ulang indeks biasanya memerlukan pembuatan salinan data. Jika drop=False, yang mana adalah setting default, indeks lama akan ditambahkan ke DataFrame sebagai kolom baru. Artinya, lebih banyak memori akan digunakan karena data tambahan disimpan dalam bentuk kolom.
  • Waktu proses: proses mengatur ulang indeks melibatkan rekonstruksi struktur DataFrame. Untuk DataFrame besar, ini bisa menjadi operasi yang berat dan memakan waktu, terutama jika dilakukan berulang kali dalam suatu loop atau dalam aplikasi yang membutuhkan respons real time.
  • Efisiensi komputasi: secara default, reset_index() mengembalikan DataFrame baru, kecuali jika inplace=True diatur. Membuat DataFrame baru bisa menjadi operasi yang mahal dalam hal komputasi dan penggunaan sumber daya, terutama dengan data besar atau kompleks (seperti multi-level index).

Tips untuk meningkatkan performa:

  • Menggunakan inplace=True: jika kamu tidak membutuhkan salinan dari DataFrame asli dan hanya ingin memodifikasi DataFrame yang ada, menggunakan inplace=True dapat mengurangi overhead memori dengan tidak membuat salinan baru.
  • Meminimalkan penggunaan: pertimbangkan kebutuhan untuk mengatur ulang indeks. Jika bisa dihindari atau digantikan dengan operasi lain yang lebih efisien, hal itu mungkin lebih baik untuk performa.
  • Mengelola level indeks: jika bekerja dengan multi-level index, mengatur ulang hanya level tertentu yang diperlukan daripada seluruh set indeks dapat mengurangi overhead.
RevoU Staff
Kickstart your career in tech with RevoU!
Menu