Rumah pembangunan bahagian belakang Tutorial Python Dapatkan pemahaman yang lebih mendalam tentang ciri teras dan faedah perpustakaan numpy

Dapatkan pemahaman yang lebih mendalam tentang ciri teras dan faedah perpustakaan numpy

Jan 19, 2024 am 09:28 AM
Kelebihan numpy Ciri teras

Dapatkan pemahaman yang lebih mendalam tentang ciri teras dan faedah perpustakaan numpy

Pemahaman mendalam tentang ciri teras dan kelebihan perpustakaan numpy memerlukan contoh kod khusus

Python ialah bahasa pengaturcaraan peringkat tinggi sumber terbuka dan numpy ialah perpustakaan sambungan penting untuk python. Numpy ialah singkatan kepada Numerical Python Ia menyediakan objek tatasusunan berbilang dimensi yang berkuasa dan pelbagai fungsi operasi yang sepadan Ia adalah salah satu perpustakaan teras pengkomputeran saintifik. Dalam bidang seperti pemprosesan data, pembelajaran mesin dan pembelajaran mendalam, numpy memainkan peranan penting. Artikel ini akan memberikan pengenalan yang mendalam kepada ciri teras dan kelebihan perpustakaan numpy, dengan contoh kod khusus.

  1. ndarray objek tatasusunan berbilang dimensi

Struktur data teras numpy ialah ndarray (tatasusunan N-dimensi), yang merupakan objek tatasusunan berbilang dimensi yang cekap. Jenis elemen tatasusunan ndarray mestilah sama, yang boleh menjadi integer, nombor titik terapung, dsb., dan ia disimpan secara berterusan dalam ingatan. Tatasusunan ndarray mempunyai beberapa atribut penting, termasuk bentuk (dimensi tatasusunan), dtype (jenis elemen), saiz (jumlah bilangan elemen) dan ndim (dimensi tatasusunan).

Berikut ialah contoh mudah untuk mencipta tatasusunan ndarray:

import numpy as np
a = np.array([1, 2, 3])
print(a)
print(a.shape)
print(a.dtype)
Salin selepas log masuk

Hasil output ialah:

[1 2 3]
(3,)
int64
Salin selepas log masuk

Kita juga boleh menukar dimensi tatasusunan ndarray melalui kaedah reshape():

b = np.array([[1, 2, 3], [4, 5, 6]])
print(b.shape)
c = b.reshape(3, 2)
print(c)
Salin selepas log masuk

Hasil output ialah:

(2, 3)
[[1 2]
 [3 4]
 [5 6]]
Salin selepas log masuk
  1. Operasi Vektor

Satu lagi ciri numpy ialah operasi vektorisasi, yang merupakan ciri yang sangat penting, ia bukan sahaja meningkatkan kecekapan pengkomputeran, tetapi juga memudahkan kesukaran menulis kod. Sebagai contoh, kami ingin menambah nombor tertentu pada setiap elemen dalam tatasusunan ndarray Jika kami tidak menggunakan operasi vektorisasi, kami perlu menulis kod sedemikian selalunya sangat tidak cekap dan sukar untuk dikekalkan. Menggunakan operasi vektorisasi numpy, kita hanya perlu menulis satu baris kod untuk mencapainya:

import numpy as np
a = np.array([1, 2, 3])
b = a + 1
print(b)
Salin selepas log masuk

Hasil output ialah:

[2 3 4]
Salin selepas log masuk
  1. Broadcast

Fungsi siaran Numpy membolehkan kami mengira tatasusunan bentuk yang berbeza, yang juga merupakan kunci kepada operasi vektorisasi numpy. Peraturan penyiaran adalah sangat mudah: jika panjang paksi dimensi tepi mengekor (iaitu, dimensi bermula dari penghujung) dua tatasusunan sepadan, atau panjang salah satu daripadanya ialah 1, ia dianggap serasi siaran. Penyiaran akan berlaku pada hilang atau panjang 1 dimensi.

Berikut ialah contoh mudah penyiaran:

a = np.arange(4)
b = np.ones(3)
c = a[:, np.newaxis] + b
print(c)
Salin selepas log masuk

Outputnya ialah:

[[1. 1. 1.]
 [2. 2. 2.]
 [3. 3. 3.]
 [4. 4. 4.]]
Salin selepas log masuk

Dalam contoh di atas, kami mencipta tatasusunan satu dimensi a dan tatasusunan satu dimensi b dengan dimensi yang berbeza. Untuk membolehkan mereka melakukan operasi pengvektoran, kami menggunakan ciri penyiaran untuk menambah dimensi baharu pada tatasusunan a supaya dimensi a dan b adalah sama.

  1. fungsi ufunc

Fungsi ufunc numpy ialah set fungsi yang beroperasi pada tatasusunan ndarray, termasuk: tambah (tambah), tolak (tolak), darab (darab), bahagi (bahagi) dan cari baki (baki) dll. Ciri khas fungsi ini ialah ia boleh beroperasi pada keseluruhan tatasusunan tanpa gelung. Selain itu, fungsi ufunc juga menyokong fungsi penyiaran, yang boleh beroperasi pada dua tatasusunan dengan bentuk yang berbeza, yang sangat mudah dan praktikal.

Berikut ialah contoh mudah fungsi ufunc:

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = np.add(a, b)
print(c)
Salin selepas log masuk

Keluarannya ialah:

[5 7 9]
Salin selepas log masuk
  1. Menghiris dan mengindeks

Menghiris dan mengindeks dalam numpy adalah serupa dengan penghirisan dan pengindeksan python dalam python Memandangkan tatasusunan ndarray adalah berbilang dimensi, penghirisan dan pengindeksan numpy adalah lebih fleksibel. Kita boleh menggunakan pernyataan a[i] untuk mengakses elemen ke-i dalam tatasusunan numpy, atau kita boleh menggunakan a[i:j] untuk mendapatkan elemen ke-i hingga ke-j dalam tatasusunan. Selain itu, kita boleh menggunakan elips (...) untuk mewakili semua dimensi lain. Untuk tatasusunan berbilang dimensi, kita boleh menggunakan a[i, j] untuk mendapatkan elemen baris ke-i dan lajur ke-j, a[:, j] untuk mendapatkan semua elemen lajur ke-j, a [i, :] untuk mendapatkan semua elemen elemen baris ke-i, dsb.

Berikut ialah contoh ringkas untuk menghiris dan mengindeks tatasusunan berbilang dimensi:

a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(a[0, 1])
print(a[1, :])
print(a[:, 0:2])
Salin selepas log masuk

Keluarannya ialah:

2
[4 5 6]
[[1 2]
 [4 5]
 [7 8]]
Salin selepas log masuk
  1. Penjanaan nombor rawak

Numpy juga menyediakan beberapa fungsi untuk menjana nombor rawak, termasuk: .rand(), np.random.randn(), np.random.randint(), np.random.shuffle(), dsb. Fungsi ini boleh digunakan dalam bidang seperti analisis data, simulasi dan pembelajaran mesin.

Berikut ialah contoh ringkas penjanaan nombor rawak:

a = np.random.rand(3)
b = np.random.randn(3)
c = np.random.randint(0, 10, size=(2, 3))
print(a)
print(b)
print(c)
Salin selepas log masuk

Outputnya ialah:

[0.1688015  0.15220492 0.44022309]
[-0.09097023  1.19200587  1.17187612]
[[5 8 8]
 [0 9 1]]
Salin selepas log masuk

Ringkasan

numpy ialah perpustakaan yang sangat berkuasa dan fleksibel dengan banyak ciri teras dan kelebihan, termasuk: objek tatasusunan berbilang dimensi yang cekap, Operasi dan penyiaran vektorisasi, fungsi ufunc, penghirisan dan pengindeksan, penjanaan nombor rawak dan banyak lagi. Dalam bidang yang berkaitan dengan sains data dan kecerdasan buatan, numpy memainkan peranan penting dan tidak boleh diganti. Kita perlu memahami dengan mendalam penggunaan dan pelaksanaan kod numpy, menguasai prinsip asas dan operasi biasanya, dan menerapkannya dalam kerja dan kajian sebenar untuk meningkatkan kecekapan dan ketepatan.

Atas ialah kandungan terperinci Dapatkan pemahaman yang lebih mendalam tentang ciri teras dan faedah perpustakaan numpy. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Menaik taraf versi numpy: panduan terperinci dan mudah diikuti Menaik taraf versi numpy: panduan terperinci dan mudah diikuti Feb 25, 2024 pm 11:39 PM

Cara menaik taraf versi numpy: Tutorial yang mudah diikuti, memerlukan contoh kod konkrit Pengenalan: NumPy ialah perpustakaan Python penting yang digunakan untuk pengkomputeran saintifik. Ia menyediakan objek tatasusunan berbilang dimensi yang berkuasa dan satu siri fungsi berkaitan yang boleh digunakan untuk melaksanakan operasi berangka yang cekap. Apabila versi baharu dikeluarkan, ciri yang lebih baharu dan pembetulan pepijat sentiasa tersedia kepada kami. Artikel ini akan menerangkan cara untuk menaik taraf pustaka NumPy anda yang dipasang untuk mendapatkan ciri terkini dan menyelesaikan isu yang diketahui. Langkah 1: Semak versi NumPy semasa pada permulaan

Analisis ciri dan kelebihan bahasa Go Analisis ciri dan kelebihan bahasa Go Apr 03, 2024 pm 10:06 PM

Ciri-ciri bahasa Go: Konkurensi tinggi (goroutine) Pengumpulan sampah automatik Kesederhanaan merentas platform Modulariti Kelebihan bahasa Go: Skala Keselamatan prestasi tinggi Sokongan komuniti

Analisis mendalam: kelebihan dan kekurangan jQuery Analisis mendalam: kelebihan dan kekurangan jQuery Feb 27, 2024 pm 05:18 PM

jQuery ialah perpustakaan JavaScript yang pantas, kecil dan kaya dengan ciri yang digunakan secara meluas dalam pembangunan bahagian hadapan. Sejak dikeluarkan pada tahun 2006, jQuery telah menjadi salah satu alat pilihan untuk banyak pembangun, tetapi dalam aplikasi praktikal, ia juga mempunyai beberapa kelebihan dan kekurangan. Artikel ini akan menyediakan analisis mendalam tentang kelebihan dan kekurangan jQuery dan menggambarkannya dengan contoh kod khusus. Kelebihan: 1. Sintaks ringkas Reka bentuk sintaks jQuery adalah ringkas dan jelas, yang boleh meningkatkan kebolehbacaan dan kecekapan menulis kod. sebagai contoh,

Apakah kelebihan dan kekurangan menggunakan aplikasi PHP menggunakan seni bina tanpa pelayan? Apakah kelebihan dan kekurangan menggunakan aplikasi PHP menggunakan seni bina tanpa pelayan? May 06, 2024 pm 09:15 PM

Menggunakan aplikasi PHP menggunakan seni bina Tanpa Pelayan mempunyai kelebihan berikut: bebas penyelenggaraan, bayar semasa anda pergi, pembangunan yang sangat berskala, dipermudahkan dan sokongan untuk pelbagai perkhidmatan. Kelemahan termasuk: masa mula sejuk, kesukaran dalam penyahpepijatan, kunci masuk vendor, pengehadan ciri dan cabaran pengoptimuman kos.

Ciri dan kelebihan satu benang Golang Ciri dan kelebihan satu benang Golang Mar 18, 2024 am 11:51 AM

Ciri dan kelebihan satu benang Golang Dengan perkembangan pesat Internet dan aplikasi mudah alih, permintaan untuk bahasa pengaturcaraan berprestasi tinggi dan berkonkurensi tinggi semakin meningkat. Dengan latar belakang ini, bahasa Go (pendek kata Golang) telah dibangunkan oleh Google dan pertama kali dikeluarkan pada tahun 2009, dan dengan cepat menjadi popular di kalangan pembangun. Golang ialah bahasa pengaturcaraan sumber terbuka yang menggunakan penaipan statik dan reka bentuk serentak Salah satu kelebihan terbesarnya ialah ciri utas tunggalnya. Golang mengguna pakai model konkurensi Goroutine.

Terokai kelebihan dan senario aplikasi bahasa Go Terokai kelebihan dan senario aplikasi bahasa Go Mar 27, 2024 pm 03:48 PM

Bahasa Go ialah bahasa pengaturcaraan sumber terbuka yang dibangunkan oleh Google dan pertama kali dikeluarkan pada tahun 2007. Ia direka bentuk untuk menjadi bahasa yang mudah, mudah dipelajari, cekap dan sangat bersesuaian, serta digemari oleh semakin ramai pembangun. Artikel ini akan meneroka kelebihan bahasa Go, memperkenalkan beberapa senario aplikasi yang sesuai untuk bahasa Go dan memberikan contoh kod khusus. Kelebihan: Konkurensi yang kuat: Bahasa Go mempunyai sokongan terbina dalam untuk benang-goroutine ringan, yang boleh melaksanakan pengaturcaraan serentak dengan mudah. Goroutin boleh dimulakan dengan menggunakan kata kunci go

Penjelasan terperinci tentang kelebihan dan kegunaan pelayan Golang Penjelasan terperinci tentang kelebihan dan kegunaan pelayan Golang Mar 20, 2024 pm 01:51 PM

Golang ialah bahasa pengaturcaraan sumber terbuka yang dibangunkan oleh Google Ia cekap, pantas dan berkuasa dan digunakan secara meluas dalam pengkomputeran awan, pengaturcaraan rangkaian, pemprosesan data besar dan bidang lain. Sebagai bahasa statik yang ditaip kuat, Golang mempunyai banyak kelebihan apabila membina aplikasi sisi pelayan. Artikel ini akan menganalisis kelebihan dan utiliti pelayan Golang secara terperinci, dan menggambarkan kuasanya melalui contoh kod tertentu. 1. Pengkompil Golang berprestasi tinggi boleh menyusun kod ke dalam kod tempatan

Penerokaan mendalam tentang kelebihan dan nilai bahasa Go Penerokaan mendalam tentang kelebihan dan nilai bahasa Go Mar 27, 2024 pm 10:18 PM

Bahasa Go (juga dikenali sebagai Golang) ialah bahasa pengaturcaraan yang dibangunkan oleh Google yang telah menarik perhatian ramai sejak keluaran pertamanya. Ia direka untuk meningkatkan produktiviti pengaturcara dan menangani keperluan pembangunan perisian yang semakin kompleks. Bahasa Go mempunyai banyak kelebihan dan nilai yang luar biasa Artikel ini akan meneroka kelebihan ini secara mendalam dan memberikan contoh kod khusus untuk menunjukkan kuasanya. 1. Kelebihan pengaturcaraan serentak Sebagai bahasa pengaturcaraan moden, Go mempunyai keupayaan pengaturcaraan serentak yang berkuasa terbina dalam. Ia melalui goroutine dan saluran

See all articles