Minggu, 20 September 2026
22:21 WIB
TERKINI
Cek Fakta Kiat Cerdas Deteksi Hoaks: Hindari Jebakan Berita Palsu di Media Sosial Cek Fakta Waspada! Penipuan Undian Berhadiah Catut Nama BNI Kembali Marak Climate BMKG Ungkap Potensi Hujan Lebat Landa Sejumlah Wilayah Indonesia Pekan Ini Moto Gp Veda Ega Peringkat 16 FP2 Moto3 Austria, Hakim Danish Tembus Empat Besar Moto Gp Drama Kualifikasi Moto3 Austria: Veda Ega ke-19, Uriarte Pecahkan Rekor Hukum Selebgram JP Terjerat Vape Narkoba: Stres Picu Konsumsi Etomidate Golongan II Arsip Mengenang Multatuli: Kisah 84 Hari yang Mengukir Sejarah Lebak Arsip Max Havelaar di Sekolah Belanda: Antara Pedoman dan Kebebasan Memilih Megapolitan Aroma Tak Sedap Ganggu Pejalan Kaki Dekat Halte IRTI Monas Tren Trump Larang CNN, MS NOW, Politico dari Gedung Putih: Konflik Media Memuncak Cek Fakta Kiat Cerdas Deteksi Hoaks: Hindari Jebakan Berita Palsu di Media Sosial Cek Fakta Waspada! Penipuan Undian Berhadiah Catut Nama BNI Kembali Marak Climate BMKG Ungkap Potensi Hujan Lebat Landa Sejumlah Wilayah Indonesia Pekan Ini Moto Gp Veda Ega Peringkat 16 FP2 Moto3 Austria, Hakim Danish Tembus Empat Besar Moto Gp Drama Kualifikasi Moto3 Austria: Veda Ega ke-19, Uriarte Pecahkan Rekor Hukum Selebgram JP Terjerat Vape Narkoba: Stres Picu Konsumsi Etomidate Golongan II Arsip Mengenang Multatuli: Kisah 84 Hari yang Mengukir Sejarah Lebak Arsip Max Havelaar di Sekolah Belanda: Antara Pedoman dan Kebebasan Memilih Megapolitan Aroma Tak Sedap Ganggu Pejalan Kaki Dekat Halte IRTI Monas Tren Trump Larang CNN, MS NOW, Politico dari Gedung Putih: Konflik Media Memuncak
NumPy

NumPy

NumPy
250px-NumPy_logo_2020.svg.png?utm_source=id.wikipedia.org&utm_campaign=parser&utm_content=thumbnail
Penulis asliTravis Oliphant
PengembangKomunitas proyek
Rilis awalSebagai Numeric, 1995 (1995); sebagai NumPy, 2006 (2006)
Templat:Kotak info perangkat lunak/simple
Ditulis dalamPython, C
Sistem operasiCross-platform
JenisAnalisis numerik
LisensiBSD[1]
Situs webnumpy.org Sunting ini di Wikidata
Repositori

NumPy (dieja /ˈnʌmp/, atau /ˈnʌmpi/[2][3]) adalah sebuah pustaka untuk bahasa pemrograman Python, NumPy memberikan dukungan untuk himpunan dan matriks multidimensi yang besar, dan dilengkapi koleksi sejumlah besar fungsi matematika tingkat tinggi untuk beroperasi pada himpunan ini.[4] Proyek pendahulu NumPy, Numeric, awalnya dibuat oleh Jim Hugunin dengan kontribusi dari beberapa pengembang lain pada tahun 1995. Pada tahun 2005, Travis Oliphant menciptakan NumPy dengan memasukkan fitur Numarray ke dalam Numeric, serta melakukan modifikasi besar-besaran. NumPy adalah perangkat lunak sumber terbuka dan memiliki banyak kontributor.

Contoh program

Pembuatan himpunan (array)
>>> importnumpyasnp
>>> x = np.array([1, 2, 3])
>>> x
array([1, 2, 3])
>>> y = np.arange(10)  # seperti fungsi Python list(range(10)), tetapi menghasilkan array
>>> y
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
Operasi dasar
>>> a = np.array([1, 2, 3, 6])
>>> b = np.linspace(0, 2, 4)  # buat array dengan empat titik dengan jarak yang sama dimulai dengan 0 dan diakhiri dengan 2.
>>> c = a - b
>>> c
array([ 1.        ,  1.33333333,  1.66666667,  4.        ])
>>> a**2
array([ 1,  4,  9, 36])
Fungsi universal
>>> a = np.linspace(-np.pi, np.pi, 100)
>>> b = np.sin(a)
>>> c = np.cos(a)
Aljabar linear
>>> fromnumpy.randomimport rand
>>> fromnumpy.linalgimport solve, inv
>>> a = np.array([[1, 2, 3], [3, 4, 6.7], [5, 9.0, 5]])
>>> a.transpose()
array([[ 1. ,  3. ,  5. ],
       [ 2. ,  4. ,  9. ],
       [ 3. ,  6.7,  5. ]])
>>> inv(a)
array([[-2.27683616,  0.96045198,  0.07909605],
       [ 1.04519774, -0.56497175,  0.1299435 ],
       [ 0.39548023,  0.05649718, -0.11299435]])
>>> b =  np.array([3, 2, 1])
>>> solve(a, b)  # menyelesaikan persamaan ax = b
array([-4.83050847,  2.13559322,  1.18644068])
>>> c = rand(3, 3) * 20  # buat matriks nilai acak 3x3 dalam [0,1] dengan skala 20
>>> c
array([[  3.98732789,   2.47702609,   4.71167924],
       [  9.24410671,   5.5240412 ,  10.6468792 ],
       [ 10.38136661,   8.44968437,  15.17639591]])
>>> np.dot(a, c)  # matrix multiplication
array([[  53.61964114,   38.8741616 ,   71.53462537],
       [ 118.4935668 ,   86.14012835,  158.40440712],
       [ 155.04043289,  104.3499231 ,  195.26228855]])
>>> a @ c # Starting with Python 3.5 and NumPy 1.10
array([[  53.61964114,   38.8741616 ,   71.53462537],
       [ 118.4935668 ,   86.14012835,  158.40440712],
       [ 155.04043289,  104.3499231 ,  195.26228855]])
Tensor
>>> M = np.zeros(shape=(2, 3, 5, 7, 11))
>>> T = np.transpose(M, (4, 2, 1, 3, 0))
>>> T.shape
(11, 5, 3, 7, 2)
Kombinasi dengan OpenCV
>>> importnumpyasnp
>>> importcv2
>>> r = np.reshape(np.arange(256*256)%256,(256,256))  # array 256x256 piksel dengan gradien horizontalfrom 0 to 255 for the red color channel
>>> g = np.zeros_like(r)  # array dengan ukuran dan tipe yang sama dengan r tetapi diisi dengan 0 untuk kanal warna hijau
>>> b = r.T # transposed r will give a vertical gradient for the blue color channel
>>> cv2.imwrite('gradients.png', np.dstack([b,g,r]))  # Gambar OpenCV ditafsirkan sebagai BGR, array tumpuk kedalaman akan ditulis ke file PNG RGB 8bit yang dinamai 'gradients.png'
True
Pencarian Nearest Neighbour - Algoritma Python Iteratif dan versi vektorisasi NumPy yang sepadan
>>> # # # Pure iterative Python # # #
>>> points = [[9,2,8],[4,7,2],[3,4,4],[5,6,9],[5,0,7],[8,2,7],[0,3,2],[7,3,0],[6,1,1],[2,9,6]]
>>> qPoint = [4,5,3]
>>> minIdx = -1
>>> minDist = -1
>>> for idx, point in enumerate(points):  # iterate over all points
...     dist = sum([(dp-dq)**2 for dp,dq in zip(point,qPoint)])**0.5  # compute the euclidean distance for each point to q
...     if dist < minDist or minDist < 0:  # if necessary, update minimum distance and index of the corresponding point
...         minDist = dist
...         minIdx = idx

>>> print('Nearest point to q: {0}'.format(points[minIdx]))
Nearest point to q: [3, 4, 4]

>>> # # # Equivalent NumPy vectorization # # #
>>> importnumpyasnp
>>> points = np.array([[9,2,8],[4,7,2],[3,4,4],[5,6,9],[5,0,7],[8,2,7],[0,3,2],[7,3,0],[6,1,1],[2,9,6]])
>>> qPoint = np.array([4,5,3])
>>> minIdx = np.argmin(np.linalg.norm(points-qPoint,axis=1))  # compute all euclidean distances at once and return the index of the smallest one
>>> print('Nearest point to q: {0}'.format(points[minIdx]))
Nearest point to q: [3 4 4]

Lihat pula

Referensi

  1. "NumPy — NumPy". numpy.org. NumPy developers.
  2. Pine, David (2014). "Python resources". Rutgers University. Diakses tanggal 2017-04-07.
  3. "How do you say numpy?". Reddit. 2015. Diakses tanggal 2017-04-07.
  4. Charles R Harris; K. Jarrod Millman; Stéfan J. van der Walt; et al. (16 September 2020). "Array programming with NumPy" (PDF). Nature (dalam bahasa Inggris). 585 (7825): 357–362. arXiv:2006.10256. Bibcode:2020Natur.585..357H. doi:10.1038/S41586-020-2649-2. ISSN 1476-4687. PMC 7759461. PMID 32939066. Wikidata Q99413970.{{cite journal}}: Pemeliharaan CS1: Tanggal diterjemahkan otomatis (link)

Bacaan lanjutan

Pranala luar

Cari tahu mengenai NumPy pada proyek-proyek Wikimedia lainnya:
Gambar dan media dari Commons
Buku dari Wikibuku
Konten disalin dari Wikipedia Bahasa Indonesia (lisensi CC BY-SA) Lihat versi asli di Wikipedia

Rekomendasi Pilihan