Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Mengira Min Lari dalam Python dengan Cekap menggunakan NumPy atau SciPy?

Bagaimana untuk Mengira Min Lari dalam Python dengan Cekap menggunakan NumPy atau SciPy?

Patricia Arquette
Lepaskan: 2024-11-30 07:05:12
asal
810 orang telah melayarinya

How to Efficiently Calculate a Running Mean in Python using NumPy or SciPy?

Mengira Min Larian dengan NumPy atau SciPy

Apabila menjalankan analisis data, mengira min berjalan (juga dikenali sebagai purata bergerak) untuk tatasusunan 1D ialah operasi biasa. Pustaka SciPy dan NumPy Python menyediakan beberapa fungsi untuk tujuan ini.

Penyelesaian NumPy

Fungsi np.convolve NumPy boleh dimanfaatkan untuk menjalankan pengiraan min. Ia mengira operasi lilitan pada tatasusunan input, di mana kernel ialah taburan seragam yang mewakili saiz tetingkap yang dikehendaki.

np.convolve(x, np.ones(N)/N, mode='valid')
Salin selepas log masuk

di mana:

  • x ialah tatasusunan 1D input
  • N ialah saiz tetingkap
  • mode='valid' mengendalikan tepi seperti yang dijangkakan (panjang output sama dengan panjang input tolak saiz tetingkap)

Memahami Pengiraan

Purata larian pada asasnya ialah operasi lilitan, di mana pekali tetingkap semuanya ditetapkan kepada 1/N. Oleh itu, menggunakan fungsi lilitan NumPy adalah cekap dari segi pengiraan.

Mod Pengendalian Tepi

np.convolve menawarkan tiga mod pengendalian tepi:

  • penuh : Memanjangkan tatasusunan input dengan mengalas dengan sifar
  • sama: Mengeluarkan tatasusunan sama panjang dengan input dengan melapik sifar kedua-dua hujung
  • sah: Mengabaikan tepi dan mengeluarkan tatasusunan panjang (len(input) - saiz_tingkap 1)

Mod ditetapkan untuk sah secara lalai, kerana ia biasanya sejajar dengan gelagat intuitif menjalankan pengiraan min, tetapi mod lain boleh digunakan bergantung pada keperluan khusus.

Atas ialah kandungan terperinci Bagaimana untuk Mengira Min Lari dalam Python dengan Cekap menggunakan NumPy atau SciPy?. 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