Rumah > pembangunan bahagian belakang > Tutorial Python > Dari kemasukan kepada kecekapan: Kuasai operasi asas dan fungsi biasa perpustakaan numpy

Dari kemasukan kepada kecekapan: Kuasai operasi asas dan fungsi biasa perpustakaan numpy

王林
Lepaskan: 2024-01-19 10:33:17
asal
1340 orang telah melayarinya

Dari kemasukan kepada kecekapan: Kuasai operasi asas dan fungsi biasa perpustakaan numpy

Pustaka numpy ialah salah satu perpustakaan pengkomputeran saintifik yang paling popular dalam Python Ia menyediakan operasi pantas pada tatasusunan dan matriks berbilang dimensi, dan menyokong pelbagai operasi matematik, operasi algebra linear, penjanaan nombor rawak dan fungsi lain. Menguasai operasi asas dan fungsi biasa numpy bukan sahaja dapat meningkatkan kecekapan analisis data dan pengkomputeran saintifik, tetapi juga membantu pembangunan bidang seperti visualisasi data dan pembelajaran mesin.

Artikel ini akan memperkenalkan operasi asas dan fungsi biasa perpustakaan numpy, termasuk penciptaan, pengindeksan dan penghirisan tatasusunan numpy, operasi tatasusunan, fungsi statistik, operasi algebra linear dan penjanaan nombor rawak. Contoh kod khusus juga disediakan untuk membantu pembaca bermula dengan cepat.

1. Cipta tatasusunan numpy

Cara paling asas untuk mencipta tatasusunan numpy ialah menggunakan fungsi numpy.array(), yang menerima senarai atau tuple sebagai parameter dan mencipta tatasusunan numpy. Berikut ialah contoh mudah:

import numpy as np

a = np.array([1, 2, 3])
print(a)
Salin selepas log masuk

Hasil keluarannya ialah:

[1 2 3]
Salin selepas log masuk

Selain itu, numpy juga mempunyai beberapa fungsi lain untuk mencipta tatasusunan, seperti:

  • numpy.zeros() digunakan untuk mencipta tatasusunan semua 0s
  • numpy.ones() digunakan untuk mencipta tatasusunan kesemuanya
  • numpy.random.rand() digunakan untuk mencipta tatasusunan nombor rawak

2. Mengindeks dan menghiris

Sama seperti senarai dalam Python , tatasusunan numpy juga Operasi pengindeksan dan penghirisan boleh digunakan. Berikut ialah beberapa contoh:

import numpy as np

a = np.array([1, 2, 3])
print(a[0])  # 输出1
print(a[-1])  # 输出3 

b = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(b[0][1])  # 输出2

c = np.array([1, 2, 3, 4, 5, 6])
print(c[1:4])  # 输出[2 3 4]
Salin selepas log masuk

Ambil perhatian bahawa dalam tatasusunan numpy, operasi penghirisan mengembalikan pandangan tatasusunan asal dan bukannya tatasusunan baharu. Oleh itu, apabila pengubahsuaian dibuat pada kepingan, tatasusunan asal juga berubah.

3. Operasi tatasusunan

Tatasusunan numpy menyokong pelbagai operasi matematik, seperti penambahan, penolakan, pendaraban, pembahagian, serta fungsi polinomial, fungsi trigonometri, dsb. Berikut ialah beberapa operasi tatasusunan biasa:

import numpy as np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

print(a + b)  # 输出[5 7 9]
print(a - b)  # 输出[-3 -3 -3]
print(a * b)  # 输出[4 10 18]
print(b / a)  # 输出[4.         2.5        2.        ]

c = np.array([[1, 2], [3, 4]])
d = np.array([[5, 6], [7, 8]])

print(c.dot(d))  # 矩阵乘法,输出[[ 19  22] [ 43  50]]
Salin selepas log masuk

4 Fungsi statistik

numpy juga menyediakan sejumlah besar fungsi statistik, seperti jumlah, min, sisihan piawai, maksimum dan minimum, dsb. Berikut ialah beberapa fungsi statistik biasa:

import numpy as np

a = np.array([1, 2, 3, 4])
print(np.sum(a))  # 求和,输出10
print(np.mean(a))  # 均值,输出2.5
print(np.std(a))  # 标准差,输出1.118033988749895
print(np.max(a))  # 最大值,输出4
print(np.min(a))  # 最小值,输出1

b = np.array([[1, 2], [3, 4]])
print(np.sum(b, axis=0))  # 按列求和,输出[4 6]
print(np.sum(b, axis=1))  # 按行求和,输出[3 7]
Salin selepas log masuk

5. Operasi algebra linear

numpy menyediakan banyak fungsi operasi algebra linear, seperti pendaraban matriks, pengiraan penentu, pengiraan nilai eigen dan vektor eigen, dsb. Berikut ialah beberapa operasi algebra linear biasa:

import numpy as np

a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])

print(np.dot(a, b))  # 矩阵乘法,输出[[19 22] [43 50]]

c = np.array([[1, 2], [3, 4]])
print(np.linalg.det(c))  # 行列式计算,输出-2.0000000000000004

d = np.array([[1, 2], [2, 1]])
print(np.linalg.eig(d))  # 特征值和特征向量的计算,输出(array([ 3., -1.]), array([[ 0.70710678, -0.70710678], [ 0.70710678,  0.70710678]]))
Salin selepas log masuk

6 Penjanaan nombor rawak

numpy menyediakan pelbagai fungsi rawak, seperti menjana integer rawak, menjana nombor rawak teragih normal, menjana tatasusunan rawak bentuk yang ditentukan, dsb. Berikut adalah beberapa fungsi rawak biasa:

import numpy as np

print(np.random.randint(0, 10, 5))  # 生成5个0到10之间的随机整数,输出[1 5 8 7 3]

print(np.random.normal(0, 1, 5))  # 生成5个均值为0,方差为1的正态分布随机数,输出[-0.60690706  2.01738925 -0.58946246 -1.42619268  0.72589716]

print(np.random.rand(3, 4))  # 生成3行4列的随机数组,输出[[0.9004391  0.50630644 0.31150836 0.90425598] [0.13734967 0.53890228 0.20053875 0.00617321] [0.96756345 0.80763172 0.21116666 0.09858394]]
Salin selepas log masuk

Di atas adalah pengenalan dan contoh kod operasi asas dan fungsi biasa perpustakaan numpy.

Atas ialah kandungan terperinci Dari kemasukan kepada kecekapan: Kuasai operasi asas dan fungsi biasa perpustakaan numpy. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan