Numpy logical_or for Multi-Array Union Operations
Numpy's logical_or function beroperasi pada pasangan tatasusunan, membawa kepada persoalan bagaimana untuk menggabungkan dengan cekap pelbagai tatasusunan untuk operasi kesatuan (begitu juga untuk logical_and and persimpangan).
Walaupun logik_atau sendiri hanya menerima dua hujah, ia boleh dirantai bersama:
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) # result: [ True, True, True, False]
Pendekatan yang lebih umum melibatkan penggunaan reduce:
result = np.logical_or.reduce((x, y, z)) # result: [ True, True, True, False]
Ini kaedah boleh digunakan pada tatasusunan berbilang dimensi dan tuple tatasusunan 1D. Selain itu, functools.reduce Python boleh digunakan dalam cara yang sama:
result = functools.reduce(np.logical_or, (x, y, z)) # result: [ True, True, True, False]
Untuk kemudahan, Numpy menyediakan sebarang, yang pada asasnya melakukan pengurangan ATAU logik sepanjang paksi:
result = np.any((x, y, z), axis=0) # result: [ True, True, True, False]
Serupa prinsip digunakan untuk logical_and dan operator logik lain, kecuali untuk logical_xor, yang tidak mempunyai semua/sebarang jenis yang sepadan fungsi.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Operasi Kesatuan Berbilang Array dengan Cekap dengan `logical_or` NumPy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!