Overview
Dengan memahami python set, kamu akan memiliki alat yang mempermudah pekerjaanmu. Mulai dari menghilangkan duplikat dalam data, menyatukan dua kumpulan data, sampai berbagai operasi lain yang kompleks, semuanya bisa dilakukan menggunakan Python set.
Bayangkan ada sebuah alat yang bisa menyederhanakan data, menghilangkan duplikasi, dan memberikan serangkaian operasi matematika yang mudah diaplikasikan. Nyatanya, alat tersebut ada dan bisa dioperasikan yang dikenal dengan nama "Python set".
Sebagai salah satu tipe data dalam bahasa pemrograman Python, set bukan hanya memastikan setiap elemen unik, tetapi juga menyediakan seperangkat operasi matematika yang efisien untuk manipulasi data.
Mulai dari penghapusan duplikasi sampai penggabungan data, set menjadi alat multifungsi yang akan memudahkan pekerjaanmu sebagai data analyst. Penasaran bagaimana cara kerjanya? Yuk, selami lebih dalam tentang Python set!
Apa itu Set pada Python?
Set dalam Python adalah koleksi elemen yang bersifat unik dan tidak berurutan. Berbeda dengan dengan tipe data lain seperti list atau tuple, set tidak mengizinkan adanya duplikasi elemen. Artinya, setiap elemen di dalam Python set pasti bersifat unik.
Saat kamu memiliki kumpulan data besar dan ingin mengetahui item apa saja yang unik dalam data tersebut tanpa harus mengurutkannya, Python set akan membantumu mengatasi ini.
Python set dan dictionary (dict) memang menggunakan notasi yang sama, yaitu kurung kurawal '{}', tetapi ada perbedaan mendasar di antara keduanya.
Set dalam Python merupakan kumpulan elemen unik dan tidak berurutan. Dengan kata lain, set tidak memiliki pasangan "key":"value".
Inilah yang membedakan set dengan dictionary, di mana struktur datanya berpasangan "key":"value". Posisi key dan value bisa ditukar tanpa pengaruh apa pun.
Untuk mendapatkan gambaran lebih jelas, mari kita lihat contoh kode berikut:
Set:
Dictionary:
Python set bukan hanya unik, tetapi juga tidak berurutan. Dengan kata lain, elemen-elemen dalam set tidak memiliki indeks. Kamu tidak bisa mengakses elemen dalam set menggunakan indeks seperti dalam list.
Menariknya lagi, Python set menyediakan berbagai metode yang bisa kamu gunakan untuk melakukan operasi seperti penggabungan, perpotongan, dan lain-lain. Meski awalnya terdengar membingungkan, tetapi sebenarnya ini adalah salah satu fitur yang membuat set lebih fleksibel dalam berbagai situasi.
Keuntungan Penggunaan Set dalam Analisis Data
Berikut beberapa keuntungan yang bisa kamu dapatkan dari penggunaan set dalam pemrosesan dan analisis data:
Penghapusan duplikasi secara otomatis
Salah satu keuntungan besar dari Python set adalah kemampuannya yang bisa secara otomatis menghapus duplikasi. Jika kamu memiliki data berulang, cukup masukkan ke dalam set dan Python akan otomatis menyaring elemen yang unik.
Keuntungan ini sangat berguna dalam membersihkan data.
Operasi matematika
Python set memungkinkan kamu melakukan operasi matematika seperti union, intersection, dan difference. Proses ini berfungsi menggabungkan atau membandingkan kumpulan data.
Misalnya, kamu bisa dengan mudah menemukan elemen yang sama antara dua kumpulan data atau elemen yang hanya ada di salah satu kumpulan data.
Pengaksesan cepat
Meskipun set tidak berurutan, akses ke elemennya sangat cepat. Kelebihan ini membantu kamu delam waktu singkat bisa menemukan apakah elemen tertentu ada dalam set.
Efisiensi memori
Dibandingkan dengan struktur data lain, set dalam Python cenderung lebih efisien dalam penggunaan memori. Kamu dapat bekerja dengan kumpulan data besar tanpa khawatir menghabiskan terlalu banyak sumber daya komputer.
Penggunaan di beberapa situasi
Bayangkan kamu adalah data analyst yang ingin mengetahui pelanggan unik dari dua toko berbeda. Menggunakan set, kamu bisa dengan mudah menemukan pelanggan yang berbelanja di kedua toko (intersection) atau pelanggan yang hanya berbelanja di salah satunya (difference).
Cara Membuat dan Mengakses Python Set
Berikut cara membuat dan mengakses Python set:
#1 Menggunakan kurung kurawal {}
Kamu bisa membuat set dengan menempatkan elemen yang dipisahkan oleh koma di dalam kurung kurawal.
Contoh:
#2 Menggunakan fungsi set()
Jika kamu ingin membuat set dari elemen-elemen dalam list atau tuple, kamu dapat menggunakan fungsi set().
Contoh:
Kedua cara di atas akan menghasilkan set yang sama, yaitu:
Sekarang, bagaimana cara mengakses elemen dalam Python set? Hal yang perlu diingat adalah set sifatnya tidak berurutan. Kamu tidak bisa mengakses elemennya dengan indeks.
Namun, kamu bisa menggunakan operasi set seperti perulangan untuk mengakses elemen-elemennya.
Contoh akses elemen dalam set
Misalkan kamu memiliki set berikut:
Kamu bisa menggunakan loop for untuk mengakses dan mencetak semua elemen dalam set:
Cara Mengoperasikan Python Set
Berikut cara mengoperasikan Python set:
Menambahkan elemen ke dalam set
Menambahkan elemen dalam set dapat dilakukan menggunakan metode add().
Contoh:
Menghapus elemen dari set
Untuk menghapus elemen dari set, kamu bisa menggunakan metode remove() atau discard(). Perbedaannya, remove() akan menghasilkan error jika elemen yang ingin dihapus tidak ditemukan, sementara discard() tidak.
Contoh:
Menggabungkan set
Ada beberapa cara untuk menggabungkan dua set atau lebih, yaitu:
#1 Metode union()
Metode union() menggabungkan semua elemen dari set yang bersangkutan dan set lain yang diberikan, tanpa duplikasi.
Contoh:
#2 Metode update()
Sama seperti union(), bedanya update() menggabungkan set lain ke dalam set yang bersangkutan.
Contoh:
#3 Metode intersection()
Metode intersection() menemukan elemen yang sama antara dua set.
Contoh:
#4 Metode difference()
Metode ini menemukan elemen yang ada di satu set tetapi tidak di set lainnya.
Contoh:
Operasi Matematika pada Set
Set dalam Python tidak hanya berguna untuk menyimpan kumpulan data unik, tetapi juga melakukan berbagai operasi matematika. Berikut beberapa operasi matematika pada set yang bisa kamu gunakan:
Irisan (intersection)
Operasi irisan menggunakan metode intersection() untuk menemukan elemen yang sama antara dua set atau lebih. Operasi ini dipakai saat kamu ingin menemukan item yang ada di semua kumpulan data.
Contoh:
Gabungan (union)
Operasi gabungan menggunakan metode union() berfungsi untuk menggabungkan semua elemen dari set yang bersangkutan dan set lain yang diberikan, tanpa duplikasi.
Contoh:
Selisih (Difference)
Operasi selisih menggunakan metode difference() untuk menemukan elemen yang ada di satu set tetapi tidak di set lainnya. Operasi ini berguna untuk menemukan perbedaan antara dua kumpulan data.
Contoh:
Selisih Simetris (symmetric difference)
Operasi selisih simetris menggunakan metode symmetric_difference() untuk menemukan elemen yang hanya ada di salah satu set, tetapi tidak di kedua set tersebut.
Contoh:
Contoh Penggunaan Python Set dalam Pekerjaan Data Analyst
Berikut beberapa contoh penggunaan Python set dalam pekerjaan sebagai data analyst:
Menghilangkan duplikasi data
Dalam pengolahan data, kamu tentu sering menemukan data yang berulang. Menggunakan set, kamu dapat dengan mudah menghilangkan duplikasi tersebut.
Contoh:
Mencari elemen unik dalam dua kumpulan data
Kamu mungkin juga ingin mengetahui elemen unik dalam dua kumpulan data yang berbeda. Kamu dapat menggunakan operasi selisih simetris untuk menangani hal ini.
Contoh:
Kategorisasi data
Set membantu kamu dalam kategorisasi data, misalnya untuk mengidentifikasi kategori produk yang unik dalam database.
Contoh:
Mencari elemen bersama antara dua kumpulan data
Dalam analisis data, sering kali perlu untuk menemukan elemen bersama antara dua kumpulan data. Kamu bisa menggunakan operasi irisan untuk menyelesaikan pekerjaan ini.
Contoh:
Batasan Penggunaan Set
Meskipun set dalam Python menawarkan berbagai keunggulan, ada beberapa batasan yang perlu kamu perhatikan:
Elemen tidak berurutan
Set menyimpan elemen dalam urutan yang tidak terdefinisi. Artinya, kamu tidak bisa mengandalkan urutan elemen dalam set. Kondisi ini bisa menjadi masalah jika urutan menjadi hal yang krusial dalam analisis data kamu.
Tidak ada indeks
Dikarenakan set bersifat tidak berurutan, kamu tidak bisa mengakses elemen dalam set menggunakan indeks seperti dalam list atau tuple. Kekurangan ini bisa membatasi fleksibilitas dalam pengolahan data.
Hanya menampung elemen yang immutable
Set tidak dapat menampung elemen yang dapat berubah (mutable), seperti list atau dictionary lain. Kamu harus berhati-hati dalam memilih jenis data yang akan disimpan dalam set.
Tidak ada duplikasi
Walaupun tidak ada duplikasi menjadi keuntungan, namun dalam situasi tertentu, informasi tentang frekuensi elemen bisa saja diperlukan. Dalam kasus tersebut, menggunakan set akan menghilangkan informasi penting ini.
Setelah mengetahui keterbatasan set, berikut saran dalam penggunaannya:
- Gunakan set saat kamu perlu memastikan data yang diproses adalah unik dan tidak ada duplikasi.
- Pertimbangkan untuk menggunakan list atau tuple jika urutan elemen menjadi hal penting atau jika kamu perlu menyimpan elemen yang dapat berubah.
- Pertimbangkan menggunakan dictionary jika kamu perlu menyimpan informasi tambahan yang terkait dengan setiap elemen.
FAQ (Frequently Ask Question)
Bagaimana cara mengkonversi set menjadi list?
Untuk mengubah set menjadi list, kamu bisa menggunakan fungsi list(). Misalnya: list_angka = list(angka_set).
Apakah set mendukung operasi slicing seperti list?
Dikarenakan set tidak berurutan, kamu tidak bisa menggunakan operasi slicing.
Penutup
Sebagai data analyst, kamu mungkin akan sering menemukan kasus di mana kamu perlu bekerja dengan kumpulan data unik dan tidak berurutan.
Dengan memahami python set, kamu akan memiliki alat yang mempermudah pekerjaanmu. Mulai dari menghilangkan duplikat dalam data, menyatukan dua kumpulan data, sampai berbagai operasi lain yang kompleks, semuanya bisa dilakukan menggunakan Python set.
Namun, penting bagi kamu untuk memahami kapan harus menggunakan set dan kapan mempertimbangkan tipe data lain, dengan memperhatikan batasan yang ada.
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!)