Menggunakan NumPy "where" dengan Pelbagai Syarat
Apabila bekerja dengan tugasan manipulasi data, selalunya perlu menggunakan syarat yang berbeza untuk memilih atau mengubah suai nilai tertentu. Fungsi "where" NumPy ialah alat yang berkuasa untuk operasi bersyarat, tetapi secara lalai, ia hanya mengendalikan dua syarat.
Pertimbangkan kes di mana anda ingin menambah lajur baharu, "energy_class," pada DataFrame panda yang dipanggil "df_energy." Kelas tenaga hendaklah ditetapkan berdasarkan syarat berikut:
Memandangkan fungsi "where" NumPy tidak menyokong berbilang keadaan, penyelesaiannya terletak pada penggunaannya yang lebih berkuasa adik, "pilih." Begini cara untuk mendekati masalah ini:
import numpy as np # Assuming df_energy has a column called "consumption_energy" col = 'consumption_energy' conditions = [ df_energy[col] >= 400, (df_energy[col] < 400) & (df_energy[col] > 200), df_energy[col] <= 200 ] choices = [ "high", 'medium', 'low' ] # Create the "energy_class" column using np.select df_energy["energy_class"] = np.select(conditions, choices, default=np.nan)
Penggunaan lanjutan "pilih" ini membolehkan anda mentakrifkan berbilang keadaan dan memetakan pilihan yang sepadan dengan output. Secara lalai, ia memberikan "np.nan" jika tiada satu pun syarat dipenuhi.
Akibatnya, DataFrame anda kini akan mempunyai lajur "energy_class" diisi dengan label yang sesuai berdasarkan syarat yang anda tentukan, memberikan klasifikasi yang jelas bagi tahap penggunaan tenaga.
Atas ialah kandungan terperinci Bagaimana untuk Menggunakan NumPy \'where\' dengan Pelbagai Syarat untuk Operasi Bersyarat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!