Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana Anda Boleh Menggunakan np.newaxis untuk Memanipulasi Dimensi Array dalam NumPy?
Memahami np.newaxis: Panduan Komprehensif
np.newaxis, sering dilambangkan sebagai Tiada, ialah fungsi serba boleh dalam NumPy yang membolehkan anda untuk meningkatkan dimensi tatasusunan sedia ada dengan memasukkan paksi baharu. Khususnya, ia menambah satu dimensi tambahan pada tatasusunan apabila digunakan sekali.
Senario untuk Menggunakan np.newaxis:
1. Mencipta Vektor Baris/Lajur:
Fungsi ini amat berguna apabila anda ingin menukar tatasusunan 1D secara eksplisit kepada sama ada vektor baris (dengan memasukkan paksi di sepanjang dimensi pertama) atau vektor lajur (oleh memasukkan paksi di sepanjang dimensi kedua).
2. Tatasusunan Penyiaran:
np.newaxis boleh digunakan semasa menjalankan operasi, seperti penambahan, antara tatasusunan dimensi berbeza. Dengan menambahkan paksi pada salah satu tatasusunan, NumPy mendayakan penyiaran, membolehkan operasi diteruskan.
3. Menggalakkan Tatasusunan kepada Dimensi Lebih Tinggi:
np.newaxis boleh digunakan beberapa kali untuk menaikkan tatasusunan kepada dimensi yang lebih tinggi, kadangkala diperlukan untuk operasi kompleks yang melibatkan tatasusunan tertib tinggi (tensor).
Perbandingan dengan np.reshape:
np.newaxis bertindak sebagai pemegang tempat, menambah paksi buat sementara waktu, manakala np.reshape membentuk semula tatasusunan kepada susun atur yang ditentukan memandangkan dimensi sejajar.
Contoh:
<code class="python"># 1D array arr = np.arange(4) # Create a column vector col_vec = arr[:, np.newaxis] # Same as arr[:, None] print(col_vec.shape) # (4, 1)</code>
Sebagai alternatif, fungsi expand_dims boleh digunakan untuk lebih jelas.
<code class="python">col_vec = np.expand_dims(arr, axis=1) print(col_vec.shape) # (4, 1)</code>
Petua:
Gunakan None sebagai pengganti np.newaxis, kerana ia adalah objek yang sama.
Atas ialah kandungan terperinci Bagaimana Anda Boleh Menggunakan np.newaxis untuk Memanipulasi Dimensi Array dalam NumPy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!