Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menentukan dengan Cekap sama ada Dua Tatasusunan NumPy Adalah Sama Elemen?

Bagaimana untuk Menentukan dengan Cekap sama ada Dua Tatasusunan NumPy Adalah Sama Elemen?

Barbara Streisand
Barbara Streisandasal
2024-10-26 17:38:29336semak imbas

How to Efficiently Determine if Two NumPy Arrays Are Element-Wise Equal?

Membandingkan Tatasusunan NumPy dengan Cekap untuk Kesamaan Element-Wise

Menentukan kesamaan dua tatasusunan NumPy boleh menjadi tugas biasa. Walaupun perbandingan asas menggunakan operator kesamaan (==) menghasilkan tatasusunan boolean, mendapatkan output Betul/Salah tunggal mungkin lebih baik. Artikel ini mempamerkan pendekatan paling mudah untuk mencapai perkara ini:

<code class="python">(A == B).all()</code>

Ungkapan ringkas ini menggunakan kaedah all() pada hasil perbandingan unsur-bijak A == B. Output adalah Benar jika semua elemen adalah sama, dan Palsu sebaliknya.

Nota: Adalah penting untuk mempertimbangkan kes khas:

  • Apabila mana-mana tatasusunan kosong dan yang lain hanya mempunyai satu elemen, keputusan adalah Benar (anomali yang berpotensi untuk diketahui).
  • Apabila tatasusunan tidak mempunyai bentuk yang sama dan tidak boleh disiarkan, ralat akan berlaku.

Oleh itu, untuk semakan yang teliti dan pengendalian pelbagai bentuk, pertimbangkan untuk menggunakan fungsi khusus seperti:

  • np.array_equal(A, B): Ujian untuk bentuk yang sama dan nilai elemen yang sama.
  • np. array_equiv(A, B): Ujian untuk bentuk boleh disiarkan dan nilai elemen yang sama.
  • np.allclose(A, B, ...): Ujian untuk bentuk yang sama dan nilai elemen yang cukup hampir.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan dengan Cekap sama ada Dua Tatasusunan NumPy Adalah Sama Elemen?. 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