Kasus Panda Kapan

Kasus Panda Kapan



Ketika suatu kondisi terpenuhi atau terpenuhi, pernyataan kasus dalam bahasa pandas memberikan output atau mengembalikan nilai. Pernyataan kasus memungkinkan untuk membandingkan nilai variabel dengan rentang nilai potensial. Ketika himpunan nilai dirujuk atau diteruskan dalam pernyataan kasus, setiap nilai di dalam himpunan diperiksa oleh kasus atau kondisi di dalam pernyataan. Kita juga dapat menggunakan pernyataan if-else untuk melakukan operasi yang sama. Jika kondisi tertentu benar, pernyataan if-else menyebabkan sepotong skrip dieksekusi. Pernyataan if-else mengatakan untuk melakukan ini jika kondisinya benar dan melakukan itu jika tidak. Dalam tutorial ini, kita akan melakukan operasi yang berbeda dengan menggunakan pernyataan kasus dan pernyataan if-else.

Bagaimana Cara Menggunakan Pernyataan Kasus Pandas?

Pernyataan kasus dapat dibuat dengan beberapa cara. Fungsi NumPy where() , yang menggunakan sintaks dasar berikut, adalah cara paling sederhana untuk membuat pernyataan kasus dalam Pandas DataFrame:

df [ 'nama kolom' ] = np.dimana ( kondisi 1 , 'nilai1',
np.dimana ( kondisi dua , 'nilai2',
np.dimana ( kondisi 3 , 'nilai3', 'nilai4' ) ) )







Pernyataan di atas akan memeriksa setiap kondisi untuk nilai dan, jika kondisi terpenuhi, akan menghasilkan output atau mengembalikan nilai terhadap kondisi.



Contoh #1: Pernyataan Kasus Panda Menggunakan Fungsi where()

Mari kita buat bingkai data terlebih dahulu sehingga kita dapat menggunakan pernyataan kasus kita. Untuk membuat bingkai data, pertama-tama kita akan mengimpor modul numpy dan pandas sehingga kita dapat menggunakan fungsinya. pd.Dataframe() akan digunakan untuk membuat bingkai data kita.







Kami telah membuat bingkai data 'df'. Kamus Python dilewatkan di dalam fungsi pd.DataFrame() sebagai argumen dengan kunci dan nilai. Kita akan menggunakan fungsi print() untuk melihat bingkai data kita.



Dalam bingkai data 'df' kami memiliki dua kolom 'nama' dan 'tanda' dengan nilai ['Ron', 'Tim', 'Anna', 'Jack', 'Rob', 'Lucy'] dan [4, 6 , 8, 6, 9,10] masing-masing. Misalkan nama itu adalah kolom yang menyimpan nama siswa dan kolom 'nilai' menyimpan skor dari beberapa tes terakhir. Sekarang, kita akan menulis pernyataan kasus yang menambahkan kolom baru bernama “keterangan” yang nilainya didasarkan pada nilai yang ditentukan oleh kita, untuk setiap kondisi.

Metode “numpy.where()” menyediakan indeks elemen dari array input, kolom, atau daftar yang memenuhi kondisi yang ditentukan. Dalam kasus sakelar di atas, fungsi np.where() memeriksa setiap elemen di kolom 'tanda'. Jika nilainya sama dengan atau kurang dari 5, itu akan mengembalikan 'gagal' sebagai output. Jika nilainya kurang dari atau sama dengan 7, maka akan kembali memuaskan, dan jika nilainya kurang dari atau sama dengan 9, akan kembali 'hebat'. Jika tidak ada, hasilnya akan sangat baik.

Seperti yang dapat diperhatikan, kolom baru 'remarks' dibuat dalam bingkai data 'df' kami, menyimpan nilai yang dikembalikan oleh pernyataan kasus di atas.

Contoh #2:

Mari kita coba lagi pernyataan kasus di atas dengan kerangka data yang berbeda. Misalkan kita harus menilai pemain berdasarkan total gol mereka di turnamen sepak bola sebelumnya. Jadi mari kita buat bingkai data untuk menyimpan catatan pemain sepak bola.

Kami telah melewati kamus dengan kunci 'nama' dan 'tujuan' di dalam fungsi pd.DataFrame() untuk membuat bingkai data kami. Untuk mencetak bingkai data kami, kami akan menggunakan fungsi cetak.

Seperti yang dapat dilihat pada bingkai data di atas, kami memiliki dua kolom: 'nama' dan 'tujuan'. Di kolom nama, kami memiliki nama pemain ['John', 'Marty', 'Clay', 'Nick', 'Mike', 'Alex', 'Tom', 'Rocky']. Di 'kolom' gol, kami memiliki jumlah total gol yang dicetak oleh setiap pemain di turnamen sebelumnya. Kami sekarang akan menggunakan pernyataan kasus kami untuk menilai para pemain ini berdasarkan gol yang telah mereka cetak.

Kasus di atas dibuat menggunakan fungsi where() . Di dalam kasus, fungsi pernyataan memeriksa setiap elemen di kolom 'tanda' terhadap kondisi. Jika nilai pada kolom 'gol' sama dengan atau kurang dari 5, maka akan mengembalikan 'C'. Jika nilai pada kolom 'tujuan' sama dengan atau kurang dari 9, itu akan mengembalikan 'B'. Ini akan mengembalikan 'A' jika nilai di kolom 'tujuan' sama dengan atau lebih besar dari 10. Nilai yang dikembalikan oleh pernyataan akan disimpan di kolom baru 'peringkat'. Mari kita cetak 'df' untuk melihat hasilnya.

Kolom 'rating' baru berhasil dibuat menggunakan skrip di atas.

Contoh # 3: Pernyataan if-else Pandas Menggunakan fungsi apply()

Sumbu baris atau kolom bingkai data digunakan oleh metode apply() untuk mengimplementasikan suatu fungsi. Kita dapat membuat fungsi yang kita tentukan sendiri dan menggunakannya dalam bingkai data kita di pandas. Ini akan terdiri dari kondisi if-else. Mari kita buat kerangka data kita terlebih dahulu, lalu kita akan membuat fungsi di mana kita akan menggunakan pernyataan if-else untuk menghasilkan hasilnya. Untuk membuat bingkai data kami, kami akan mengimpor modul pandas terlebih dahulu, kemudian kami akan melewati kamus di dalam metode pd.DataFrame().

Seperti yang dapat dilihat, bingkai data kami terdiri dari dua kolom 'A' yang menyimpan nilai numerik [23, 35, 64, 74, 85] dan 'B' dengan nilai [45, 34, 61, 89, 27]. Sekarang kita akan membuat fungsi yang akan menentukan nilai mana yang lebih besar di antara kedua kolom di setiap baris bingkai data kita.

Anda dapat menggunakan fungsi lambda Python “pandas. DataFrame.apply()” untuk menjalankan ekspresi. Dalam Python, fungsi lambda adalah fungsi anonim ringkas yang menerima sejumlah argumen dan mengeksekusi ekspresi. Dalam skrip di atas, kami telah membuat pernyataan kondisi yang akan membandingkan nilai kedua kolom dan menyimpan hasilnya di kolom 'perbandingan' yang baru. Jika nilai kolom 'A' lebih kecil dari nilai kolom 'B', maka akan mengembalikan 'B lebih besar'. Jika kondisi tidak terpenuhi maka akan mengembalikan “A lebih besar”.

Contoh # 4:

Mari kita coba contoh lain menggunakan pernyataan if-else di dalam fungsi apply() dengan bingkai data lain.

Misalkan bingkai data kami menyimpan catatan karyawan dari beberapa perusahaan. Kolom 'emp' menyimpan nama karyawan [“Franky”, “Harry”, “Luke”, “Peter”, “Andrew”], sedangkan kolom 'salary' menyimpan gaji setiap karyawan [1350, 1000, 900 , 1200, 980] dalam bingkai data 'df'. Sekarang kita akan membuat pernyataan if-else menggunakan metode apply().

Kondisi di atas akan memeriksa setiap nilai di kolom 'gaji' dan menambahkan 200 ke gaji karyawan di mana nilai gaji kurang dari atau sama dengan 1000. Kami telah menyimpan nilai yang dikembalikan dari fungsi apply() di kolom baru ' kenaikan'. Mari kita lihat hasil dari script di atas.

Seperti yang Anda lihat, fungsi telah berhasil menambahkan 200 ke nilai yang kurang dari atau sama dengan 100. Nilai yang lebih besar dari 1000 tetap tidak berubah.

Kesimpulan:

Dalam tutorial ini, kita telah melihat bahwa ketika kondisi terpenuhi, pernyataan jenis ini, yang disebut pernyataan kasus, mengembalikan nilai. Kami telah melihat bagaimana Anda dapat membuat pernyataan kasus untuk melakukan operasi atau tugas yang diperlukan. Dalam tutorial ini, kita telah menggunakan fungsi np.where() dan fungsi apply() untuk membuat pernyataan kasus. Kami menerapkan beberapa contoh untuk mengajari Anda cara menggunakan pernyataan kasus panda dengan menggunakan fungsi where() dan cara menggunakan fungsi apply() untuk membuat pernyataan kasus.