top of page
bg-grid 1.png

Konsep dan Penggunaan Python Lambda dalam Analisis Data

Lambda dalam Python adalah jenis fungsi khusus yang dikenal sebagai "fungsi anonim". Begini cara penggunaan sekaligus contohnya!

Data Analytics

RevoU Staff

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 12500+ member selamanya untuk support perkembangan karir kamu!

Apakah kamu pernah merasa ingin menulis fungsi dalam Python yang ringkas dan hanya memerlukan satu baris kode? Atau mungkin kamu mencari cara menulis kode yang lebih efisien tanpa mengorbankan fungsionalitasnya?


Semua itu bisa kamu lakukan dengan Python lambda.


Di artikel ini, kita akan menjelajah lebih jauh tentang Python lambda, mulai dari definisi, syntax, keunggulan, contoh penggunaan, sampai batasan-batasannya. Mari kita mulai!


Apa itu Lambda di Python?


Lambda dalam Python adalah jenis fungsi khusus yang dikenal sebagai "fungsi anonim". Dengan kata lain, lambda adalah fungsi yang tidak memiliki nama.


Jika fungsi biasa dalam Python didefinisikan menggunakan kata kunci def dan harus diberi nama, lambda didefinisikan menggunakan kata kunci lambda dan tidak memerlukan nama. Alasan inilah yang menjadikannya lebih ringkas dan hemat waktu dalam penulisan kode.


Dalam analisis data sehari-hari, lambda sering digunakan untuk melakukan operasi yang sederhana dan cepat pada data, tanpa perlu mendefinisikan fungsi secara eksplisit.


Cara kerja lambda yaitu dengan membaca argumen yang diberikan, lalu melakukan operasi pada argumen tersebut dan mendapatkan hasil akhir.


Sebagai data analyst, Python lambda sangat berguna dalam pekerjaan sehari-hari. Misalnya, saat kamu ingin menerapkan suatu fungsi ke setiap elemen dalam list atau array, kamu dapat menggunakan fungsi lambda ini.


Syntax Dasar Python Lambda


Syntax Python lambda memungkinkan kamu menulis fungsi dalam satu baris kode yang membuatnya lebih ringkas dan sering digunakan dalam operasi sederhana.

Berikut adalah syntax dasar dari Python lambda:

lambda arguments: expression

Mari kita bahas setiap bagian dari sintaks di atas:

  • Keyword lambda: bagian ini adalah kata kunci yang digunakan untuk mendefinisikan fungsi lambda dalam Python. Keyword memberitahu Python bahwa kamu akan mendefinisikan fungsi anonim.

  • Argument: argumen adalah variabel yang digunakan dalam ekspresi lambda. Kamu bisa menggunakan satu argumen atau lebih. Tak hanya itu, kamu juga bisa mendefinisikan argumen opsional.

  • Titik dua(:): titik dua memisahkan argument dari expression dan menunjukkan bahwa ekspresi lambda akan dimulai setelah titik dua.

  • Expression: ekspresi adalah kode yang akan dievaluasi dan menghasilkan nilai. Ini adalah bagian yang melakukan pekerjaan dalam fungsi lambda.


Keunggulan Python Lambda


Berikut beberapa keunggulan utama dari Python lambda:


#1 Sederhana dan ringkas


Salah satu keunggulan utama dari Python lambda adalah kemampuannya untuk mengemas fungsi dalam satu baris kode. Tidak seperti fungsi reguler yang memerlukan definisi dengan def dan nama, lambda menghilangkan kebutuhan tersebut dan membuat kode menjadi lebih ringkas.


Contoh: lambda x: x*2 akan menggandakan input, tanpa perlu mendefinisikan fungsi secara eksplisit.


#2 Fleksibel


Python lambda memberikan fleksibilitas dalam penulisan kode. Kamu dapat menggunakan lambda ketika fungsi biasa mungkin terlalu kaku atau berlebihan.


Misalnya, kamu menggunakan lambda sebagai argumen dalam fungsi seperti map(), filter(), atau reduce().


#3 Ketangkasan dalam pengembangan


Saat bekerja dengan analisis data atau tugas-tugas yang membutuhkan banyak operasi sederhana, Python lambda akan meningkatkan agilitas dalam pengembangan.


Lambda memungkinkan kamu dengan cepat membuat dan menguji fungsi sementara tanpa perlu menghabiskan waktu menulis banyak kode.


#4 Fungsi anonim


Dikarenakan lambda adalah fungsi anonim, kamu tidak perlu khawatir untuk memberi nama fungsi tersebut. Keunggulan ini sangat berguna dalam kasus di mana fungsi hanya digunakan sekali dalam kode dan nama fungsi tidak diperlukan.


#5 Integrasi dengan fungsi

bawaan


Python lambda dapat dengan mudah digabungkan dengan fungsi bawaan seperti map(), filter(), dan reduce() yang memungkinkan kamu mengolah data lebih efisien.


#6 Bersifat sementara (temporary)


Sebuah fungsi yang dihasilkan oleh def biasanya dapat digunakan berkali-kali pada program. Jika kita hanya membuat fungsi sederhana dan cukup digunakan sedikit dalam keseluruhan program, kita bisa menggunakan lambda agar penulisan program menjadi lebih ringkas.


Contoh Penggunaan Python Lambda


Berikut beberapa contoh yang menunjukkan bagaimana penggunaan Python lambda:


Ekstraksi informasi


Contohnya, kamu memiliki daftar nama lengkap dan ingin mengambil hanya nama depan. Kamu bisa menggunakan lambda bersama dengan map() seperti ini:

nama_lengkap = ['John Doe', ‘Jane Smith', ‘Bob Johnson']
nama_depan = map(lambda x: x.split()[0], nama_lengkap)

# Output ['John', 'Jane', ‘Bob']

Transformasi data


Contoh penggunaan lambda dalam transformasi data bisa dengan menggandakan setiap elemen dalam list:

angka = [1, 2, 3, 4]
hasil_ganda = map (lambda x: x * 2, angka)

# Output [2, 4, 6, 8]

Filter data


Jika kamu ingin menyaring data berdasarkan kriteria tertentu, kamu bisa menggunakan lambda dengan filter():

angka = [5, 12, 17, 18, 24]
hasil_filter = filter (lambda x: x % 2 == 0, angka)

# Output [12, 18, 24]

Agregasi data


Untuk menggabungkan data dalam bentuk agregasi, kamu bisa menggunakan lambda dengan reduce():

from functools import reduce
angka = [1, 2, 3, 4]
jumlah = reduce (lambda x, y: x + y, angka)

# Output 10

Contoh Penggunaan Lambda dengan For untuk Menghasilkan Rentang Data


Salah satu contoh menarik lainnya dari penggunaan Python lambda yaitu dalam kombinasi dengan perulangan for untuk menghasilkan rentang data, seperti mengisi sebuah list.


Misalnya, kamu ingin membuat list yang berisi kuadrat dari angka 0 sampai 9. Kamu bisa melakukannya dengan kombinasi lambda dan map() sebagai berikut:

kuadrat = map(lambda x: ×**2, range(10))
print(list(kuadrat))

# Output [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

Contoh di atas menunjukkan bagaimana lambda bisa digunakan untuk menghasilkan ekspresi yang efektif dalam mengolah data.


Batasan dan Pertimbangan Penggunaan Python Lambda


Walaupun Python lambda memiliki banyak keunggulan, ada juga beberapa batasan yang perlu kamu pertimbangkan sebelum menggunakannya.


Keterbatasan kompleksitas fungsi


Lambda berguna untuk fungsi sederhana yang hanya terdiri dari satu ekspresi. Namun, untuk fungsi lebih kompleks yang mungkin memerlukan beberapa baris kode atau struktur kontrol, lambda tidaklah cocok.


Batasan sintaksis


Sintaksis lambda yang ringkas juga berarti ada keterbatasan dalam apa yang dapat kamu lakukan dengannya. Misalnya, kamu tidak dapat menambahkan dokumentasi dalam bentuk docstring dan tidak dapat menetapkan variabel lokal.


Keterbacaan kode


Dalam beberapa kasus, penggunaan lambda yang berlebihan dapat membuat kode menjadi sulit dibaca, terutama jika ekspresinya kompleks. Dalam situasi ini, mungkin lebih baik menggunakan fungsi terpisah dengan nama yang jelas.


Untuk mendapatkan gambaran lebih jelas batasan dari lambda, berikut tabel perbedaan antara penggunaan def dan lambda agar bisa mengetahui kapan harus menggunakannya.

Tabel perbedaan def dan lambda

Dengan keterbatasan di atas, berikut beberapa saran dalam penggunaan Python lambda:

  • Gunakan lambda untuk fungsi sederhana: jika kamu memerlukan fungsi sederhana yang hanya terdiri dari satu ekspresi, lambda adalah pilihan yang tepat.

  • Gunakan fungsi terpisah untuk kasus yang lebih kompleks: untuk fungsi lebih kompleks yang memerlukan lebih dari satu ekspresi, pertimbangkan untuk menggunakan fungsi terpisah dengan def. Fungsi def membuat kode kamu lebih mudah dibaca dan dipelihara.


FAQ (Frequently Ask Question)


Kapan sebaiknya menggunakan lambda dibanding fungsi biasa?


Gunakan lambda untuk tugas sederhana yang dapat dijelaskan dalam satu ekspresi. Untuk tugas yang lebih kompleks, gunakan fungsi biasa dengan def.


Bisakah saya memberi nama pada lambda?


Meskipun lambda dikenal sebagai "fungsi anonim", kamu bisa menetapkan lambda ke variabel untuk memberinya nama. Contoh: ganda = lambda x: x * 2.


Bagaimana cara saya debug lambda?


Dikarenakan lambda adalah satu baris ekspresi, debugging lebih sulit dilakukan dibandingkan dengan fungsi biasa. Kamu disarankan menggunakan fungsi terpisah dalam kasus yang kompleks jika ingin melakukan debugging.


Penutup


Python lambda membantu dalam penulisan kode yang efisien, ringkas, dan menyediakan solusi tepat untuk tugas-tugas sederhana tanpa perlu mendefinisikan fungsi penuh. Dari sintaksis dasar sampai contoh penggunaannya dalam manipulasi data sehari-hari, lambda menawarkan fleksibilitas yang luar biasa bagi para data analyst.


Namun, penting juga untuk diingat bahwa Python lambda bukanlah solusi untuk setiap situasi. Untuk operasi yang lebih kompleks dan membutuhkan banyak baris kode, fungsi reguler akan lebih sesuai.

bottom of page