Rumah > Artikel > pembangunan bahagian belakang > Kongsi petua dan contoh fungsi numpy untuk meningkatkan kecekapan kerja
Berkongsi petua dan contoh fungsi numpy untuk meningkatkan kecekapan kerja
Pengenalan:
Dalam bidang pemprosesan data dan pengkomputeran saintifik, adalah perkara biasa untuk menggunakan perpustakaan numpy Python. Numpy menyediakan satu siri fungsi dan alatan berkuasa yang boleh melaksanakan operasi dan pengiraan data berskala besar dengan mudah. Artikel ini akan memperkenalkan beberapa teknik fungsi numpy untuk meningkatkan kecekapan kerja dan menyediakan contoh kod khusus.
1. Operasi vektorisasi
Operasi vektorisasi Numpy ialah salah satu fungsinya yang paling berkuasa. Melalui operasi vektorisasi, anda boleh mengelak daripada menggunakan gelung untuk beroperasi pada setiap elemen, sekali gus meningkatkan kelajuan operasi dengan ketara.
Contoh kod 1: Kira jumlah baris dan lajur matriks
import numpy as np m = np.random.rand(1000, 1000) # 使用for循环 row_sum = np.zeros(1000) col_sum = np.zeros(1000) for i in range(1000): for j in range(1000): row_sum[i] += m[i][j] col_sum[j] += m[i][j] # 使用矢量化操作 row_sum = np.sum(m, axis=1) col_sum = np.sum(m, axis=0)
Contoh kod 2: Kira purata wajaran dua tatasusunan
import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) weights = np.array([0.2, 0.3, 0.5]) # 使用for循环 result = 0 for i in range(3): result += a[i] * b[i] * weights[i] # 使用矢量化操作 result = np.dot(np.multiply(a, b), weights)
2. Siaran
Penyiaran ialah fungsi dalam numpy yang membenarkan tatasusunan dimensi berbeza kepada menjadi Pengiraan masa menjadi sangat mudah. Dengan penyiaran, kami hanya boleh beroperasi pada tatasusunan tanpa padanan dimensi yang jelas.
Contoh kod 3: Kira ralat min kuasa dua tatasusunan
import numpy as np a = np.array([1, 2, 3]) mean = np.mean(a) var = np.sqrt(np.mean((a - mean) ** 2))
Contoh kod 4: Tolak min baris yang sepadan daripada setiap baris matriks
import numpy as np m = np.random.rand(1000, 1000) mean = np.mean(m, axis=1) m -= mean[:, np.newaxis]
3 Kemahiran menghiris dan mengindeks
Numpy memberikan banyak slicing dan kemahiran pengindeksan, yang boleh memintas dan menapis tatasusunan dengan mudah.
Contoh kod 5: Ekstrak secara rawak beberapa elemen daripada tatasusunan
import numpy as np a = np.arange(100) np.random.shuffle(a) selected = a[:10]
Sampel kod 6: Penapis elemen dalam tatasusunan yang memenuhi syarat
import numpy as np a = np.array([1, 2, 3, 4, 5, 6]) selected = a[a > 3]
4 Fungsi am dan fungsi agregat
Numpy menyediakan sejumlah besar fungsi dan agregat. fungsi, yang boleh melakukan pelbagai operasi matematik dan statistik pada tatasusunan dengan mudah.
Sampel kod 7: Ambil nilai mutlak elemen tatasusunan
import numpy as np a = np.array([-1, -2, -3, 4, 5, 6]) abs_a = np.abs(a)
Sampel kod 8: Kira jumlah, purata dan nilai maksimum tatasusunan
import numpy as np a = np.array([1, 2, 3, 4, 5, 6]) sum_a = np.sum(a) mean_a = np.mean(a) max_a = np.max(a)
Ringkasan:
Artikel ini memperkenalkan beberapa teknik fungsi numpy untuk menambah baik kerja kecekapan dan menyediakan contoh kod khusus. Melalui operasi vektorisasi, teknik penyiaran, penghirisan dan pengindeksan, dan penggunaan fungsi umum dan agregat, kami boleh menggunakan numpy dengan lebih cekap dalam pemprosesan data dan pengkomputeran saintifik. Saya harap artikel ini akan membantu kerja semua orang!
Atas ialah kandungan terperinci Kongsi petua dan contoh fungsi numpy untuk meningkatkan kecekapan kerja. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!