Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Memohon Berbilang Syarat dalam Tatasusunan Menggunakan NumPy\"np.select\"?

Bagaimana untuk Memohon Berbilang Syarat dalam Tatasusunan Menggunakan NumPy\"np.select\"?

Susan Sarandon
Susan Sarandonasal
2024-10-19 12:57:02440semak imbas

How to Apply Multiple Conditions in Arrays Using NumPy's

Memohon Berbilang Syarat dengan "di mana" Numpy

Menggunakan fungsi "di mana" NumPy boleh menjadi alat yang berkuasa untuk memilih elemen secara bersyarat dalam tatasusunan berdasarkan kriteria tertentu. Walau bagaimanapun, pelaksanaan standard "di mana" hanya membenarkan dua syarat dengan output yang sepadan. Ini boleh menjadi had apabila berurusan dengan senario yang melibatkan berbilang keadaan.

Untuk menangani isu ini, penyelesaian yang lebih serba boleh ialah menggunakan fungsi "np.select". "np.select" membenarkan penilaian berbilang keadaan serentak dan penetapan output yang sepadan. Mari kita terokai bagaimana ini boleh digunakan untuk masalah menetapkan kelas tenaga kepada DataFrame berdasarkan nilai tenaga penggunaan.

Pelaksanaan:

col = 'consumption_energy'
conditions = [ df['consumption_energy'] >= 400, (df['consumption_energy'] < 400) & (df['consumption_energy']> 200), df['consumption_energy'] <= 200 ]
choices = [ "high", 'medium', 'low' ]    
df['energy_class'] = np.select(conditions, choices, default=np.nan)

Kod ini mencipta tiga syarat berdasarkan nilai dalam lajur 'tenaga_penggunaan':

  1. 'tenaga_penggunaan' >= 400: Berikan 'tinggi' kepada keadaan ini.
  2. 'tenaga_penggunaan' < 400 dan 'tenaga_penggunaan' > 200: Berikan 'sederhana' kepada keadaan ini.
  3. 'consumption_energy' <= 200: Berikan 'rendah' ​​kepada keadaan ini.
  4. Fungsi "np.select" menilai setiap syarat, dan jika sebarang syarat dipenuhi, ia memberikan output yang sepadan daripada senarai "pilihan". Jika tiada syarat dipenuhi, ia menetapkan 'nan' sebagai nilai lalai.

    Output:

      consumption_energy  energy_class
    0                 459         high
    1                 416         high
    2                 186          low
    3                 250       medium
    4                 411         high
    5                 210       medium
    6                 343       medium
    7                 328       medium
    8                 208       medium
    9                 223       medium

    Dengan menggunakan "np.select," kami telah berjaya menetapkan kelas tenaga kepada DataFrame berdasarkan syarat yang ditentukan, menawarkan cara serba boleh untuk mengendalikan berbilang keadaan apabila memilih elemen dalam tatasusunan.

    Atas ialah kandungan terperinci Bagaimana untuk Memohon Berbilang Syarat dalam Tatasusunan Menggunakan NumPy\"np.select\"?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn