Rumah > Artikel > pembangunan bahagian belakang > Mengapa `a.T` Tidak Mengubah Tatasusunan NumPy 1D?
Cara Mengubah Tatasusunan 1D NumPy
Apabila bekerja dengan perpustakaan NumPy Python, memahami konsep transposisi adalah penting untuk memanipulasi tatasusunan. Walau bagaimanapun, kekeliruan boleh timbul apabila cuba menukar tatasusunan 1D.
Untuk menggambarkan, pertimbangkan kod berikut:
import numpy as np a = np.array([5,4]) print(a) print(a.T)
Output kod ini mendedahkan bahawa a.T tidak menukar tatasusunan sebagai dijangka. Ini kerana transpose tatasusunan 1D juga merupakan tatasusunan 1D. Sebaliknya, apabila tatasusunan ialah 2D, seperti `[[],[]], transpose menukar baris dan lajur dengan betul.
Untuk mendapatkan transpose yang dikehendaki bagi tatasusunan 1D, anda boleh menukarnya menjadi Tatasusunan 2D dan kemudian alihkannya. Ini dicapai menggunakan np.newaxis (atau Tiada), yang menambahkan dimensi tambahan pada tatasusunan:
a = np.array([5,4])[np.newaxis] print(a) print(a.T)
Proses ini menukar vektor kepada vektor lajur dengan berkesan dan kemudian menukarnya dengan betul.
Adalah penting untuk ambil perhatian bahawa dalam kebanyakan kes, menambah dimensi tambahan adalah tidak perlu kerana NumPy menyiarkan tatasusunan 1D secara automatik dalam pengiraan, berkesan menghapuskan keperluan untuk membezakan antara vektor baris dan lajur.
Atas ialah kandungan terperinci Mengapa `a.T` Tidak Mengubah Tatasusunan NumPy 1D?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!