Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Isih Tatasusunan Berbilang Dimensi NumPy mengikut Lajur Tertentu?

Bagaimanakah Saya Boleh Isih Tatasusunan Berbilang Dimensi NumPy mengikut Lajur Tertentu?

Linda Hamilton
Lepaskan: 2024-12-23 21:42:14
asal
850 orang telah melayarinya

How Can I Sort a NumPy Multidimensional Array by a Specific Column?

Mengisih Tatasusunan Berbilang Dimensi dalam NumPy mengikut Lajur Tertentu

NumPy menyediakan keupayaan manipulasi tatasusunan yang berkuasa, termasuk menyusun tatasusunan berbilang dimensi mengikut lajur yang ditentukan. Fungsi ini amat berguna untuk mengatur dan menganalisis data. Mari kita terokai cara untuk mencapai pengisihan berasaskan lajur dalam NumPy.

Andaikan kita mempunyai tatasusunan NumPy a dengan berbilang lajur:

a = numpy.array([[9, 2, 3],
                  [4, 5, 6],
                  [7, 0, 5]])
Salin selepas log masuk

Untuk mengisih baris a mengikut lajur kedua, kita boleh memanfaatkan fungsi argsort(). Ia memerlukan tatasusunan dan mengembalikan indeks yang akan mengisih tatasusunan. Dengan mengindeks a dengan indeks yang diisih ini, kita boleh memperoleh tatasusunan diisih yang diingini.

sorted_a = a[a[:, 1].argsort()]
Salin selepas log masuk

Operasi ini menghasilkan tatasusunan diisih berikut:

array([[7, 0, 5],
       [9, 2, 3],
       [4, 5, 6]])
Salin selepas log masuk

Sintaks a[:, 1 ] memilih lajur kedua (diindeks pada 1) daripada tatasusunan a. argsort() yang digunakan pada lajur ini menghasilkan indeks yang diisih, yang kemudiannya digunakan untuk mengisih baris.

Teknik ini sangat cekap dan serba boleh, membolehkan untuk mengisih mengikut mana-mana lajur yang dikehendaki dalam tatasusunan berbilang dimensi. Ia menyediakan cara yang mudah dan berkuasa untuk menyusun dan mengekstrak cerapan bermakna daripada data.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Isih Tatasusunan Berbilang Dimensi NumPy mengikut Lajur Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan