Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menggunakan NumPy \'where\' dengan Pelbagai Syarat untuk Operasi Bersyarat?

Bagaimana untuk Menggunakan NumPy \'where\' dengan Pelbagai Syarat untuk Operasi Bersyarat?

Linda Hamilton
Linda Hamiltonasal
2024-10-19 12:59:02548semak imbas

How to Use NumPy

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:

  • nilai "tenaga_penggunaan" lebih daripada 400: "tinggi"
  • nilai "tenaga_penggunaan" antara 200 dan 400: "sederhana"
  • Nilai "consumption_energy" kurang daripada atau sama dengan 200: "low"

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!

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