Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Melakukan Operasi Logik ATAU pada Lebih Daripada Dua Tatasusunan NumPy?
Fungsi logical_or Numpy dengan Pelbagai Argumen
Fungsi logical_or Numpy direka untuk membandingkan dua tatasusunan dan mengembalikan tatasusunan dengan nilai True atau False bergantung pada hasil perbandingan. Walau bagaimanapun, fungsi ini hanya boleh mengendalikan maksimum dua argumen. Untuk mencari gabungan lebih daripada dua tatasusunan menggunakan logical_or, kami mempunyai beberapa pilihan:
Chaining logical_or Calls
Satu pendekatan ialah merantai berbilang logical_or calls. Contohnya:
x = np.array([True, True, False, False]) y = np.array([True, False, True, False]) z = np.array([False, False, False, False]) result = np.logical_or(np.logical_or(x, y), z) print(result)
Output:
[ True True True False]
Kaedah ini berfungsi dengan menggabungkan tatasusunan secara berurutan dan melaksanakan logik_atau padanya satu demi satu.
Menggunakan kurangkan
Cara yang lebih ringkas untuk menggabungkan berbilang logik_atau panggilan ialah menggunakan fungsi pengurangan NumPy:
result = np.logical_or.reduce((x, y, z)) print(result)
Output:
[ True True True False]
reduce menggunakan operasi tertentu (dalam kes ini, logical_or) pada jujukan tatasusunan yang diberikan.
Python's reduce
Sebagai alternatif, Python juga menyediakan fungsi reduce yang boleh digunakan:
from functools import reduce result = reduce(np.logical_or, (x, y, z)) print(result)
Output:
[ True True True False]
Python's reduce kurang biasa digunakan dalam kes sedemikian, kerana selalunya terdapat alternatif yang lebih mudah.
Menggunakan mana-mana
Sebarang fungsi NumPy juga boleh digunakan untuk mencari penyatuan berbilang tatasusunan, walaupun ia memerlukan hujah paksi eksplisit untuk menentukan dimensi sepanjang untuk melaksanakan operasi:
result = np.any((x, y, z), axis=0) print(result)
Output:
[ True True True False]
sebarang mengembalikan tatasusunan dengan nilai Betul atau Palsu, yang menunjukkan sama ada sebarang elemen di sepanjang paksi yang ditentukan adalah Benar.
Begitu juga, logik_dan dan fungsi logik lain beroperasi dengan cara yang sama, membenarkan rantaian, pengurangan dan sebarang operasi untuk menggabungkan lebih daripada dua argumen.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melakukan Operasi Logik ATAU pada Lebih Daripada Dua Tatasusunan NumPy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!