Penggantian Nilai Tatasusunan NumPy yang Cekap untuk Nilai yang Melebihi Ambang
Apabila berurusan dengan tatasusunan NumPy, selalunya perlu menggantikan elemen yang memenuhi kriteria tertentu dengan nilai tertentu. Satu senario biasa ialah menggantikan nilai yang lebih besar daripada ambang.
Penggantian Nilai Ambang
Untuk menggantikan semua nilai dalam tatasusunan NumPy 2D yang melebihi ambang T dengan nilai x , anda boleh menggunakan pengindeksan NumPy'sFancy seperti berikut:
<code class="python">arr[arr > T] = x</code>
Kaedah ini sangat cekap dan ringkas, menjadikannya sesuai untuk tatasusunan besar.
Perbandingan dengan Pendekatan Untuk Gelung
Pendekatan untuk gelung yang disebut dalam soalan memerlukan lelaran melalui keseluruhan tatasusunan. Kaedah ini lambat dan tidak cekap, terutamanya untuk tatasusunan yang besar. Sebaliknya, pengindeksan Fancy beroperasi pada keseluruhan tatasusunan sekaligus, menghasilkan masa pelaksanaan yang jauh lebih pantas.
Contoh Penggunaan
Pertimbangkan matriks rawak 500 x 500 di mana kami mahu menggantikan semua nilai yang lebih besar daripada 0.5 dengan 5:
<code class="python">import numpy as np A = np.random.rand(500, 500) A[A > 0.5] = 5</code>
Operasi ini mengambil masa hanya sebahagian kecil berbanding dengan pendekatan gelung untuk.
Atas ialah kandungan terperinci Berikut ialah beberapa tajuk berasaskan soalan yang sesuai dengan kandungan artikel anda: **Fokus pada kecekapan:** * **Penggantian Nilai Tatasusunan NumPy: Bagaimana Menggantikan Nilai Di Atas Ambang Dengan Cekap?** * **Wh. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!