Python Tutorial NumPy untuk Pemula: Belajar dengan Contoh

Apa itu NumPy Python?

JumlahPy adalah perpustakaan sumber terbuka yang tersedia di Python, yang membantu dalam pemrograman matematika, sains, teknik, dan ilmu data. Ini adalah pustaka yang sangat berguna untuk melakukan operasi matematika dan statistik dalam Python. Ia berfungsi sempurna untuk array multidimensi dan perkalian matriks. Sangat mudah untuk diintegrasikan dengan C/C++ dan Fortran.

Untuk proyek ilmiah apa pun, NumPy adalah alat untuk mengetahuinya. Itu telah dibangun untuk bekerja dengan array N-dimensi, aljabar linier, bilangan acak, transformasi Fourier, dll.

NumPy adalah bahasa pemrograman yang berhubungan dengan array dan matriks multidimensi. Selain array dan matriks, NumPy mendukung sejumlah besar operasi matematika. Pada bagian ini, kami akan mengulas fungsi-fungsi penting yang perlu Anda ketahui untuk tutorial tentang 'TensorFlow. "

Mengapa menggunakan NumPy?

NumPy adalah efisiensi memori, yang berarti ia dapat menangani sejumlah besar data yang lebih mudah diakses dibandingkan perpustakaan lainnya. Selain itu, NumPy sangat mudah digunakan, terutama untuk perkalian dan pembentukan kembali matriks. Selain itu, NumPy cepat. Faktanya, TensorFlow dan Scikit belajar menggunakan array NumPy untuk menghitung perkalian matriks di back end.

Cara Memasang NumPy

Untuk menginstal perpustakaan NumPy, silakan lihat tutorial kami Cara memasang TensorFlow. NumPy diinstal secara default dengan Anaconda.

Dalam kasus jarak jauh, NumPy tidak diinstal-

Anda dapat menginstal NumPy menggunakan Anaconda:

conda install -c anaconda numpy
  • In Jupyter Buku catatan :
import sys
!conda install --yes --prefix {sys.prefix} numpy

Impor NumPy dan Periksa Versi

Perintah untuk mengimpor numpy adalah:

import numpy as np

Kode di atas mengganti nama namespace Numpy menjadi np. Hal ini memungkinkan kita untuk mengawali fungsi, metode, dan atribut Numpy dengan ” np ” alih-alih mengetik ” numpy.” Ini adalah pintasan standar yang akan Anda temukan dalam literatur numpy

Untuk memeriksa versi NumPy yang Anda instal, gunakan perintah di bawah ini:

print (np.__version__)

Keluaran:

1.18.0

Apa itu Python Array NumPy?

Array NumPy agak mirip Python daftar, tetapi masih sangat berbeda pada saat yang sama. Bagi Anda yang baru mengenal topik ini, mari kita perjelas apa sebenarnya itu dan apa manfaatnya.

Sesuai dengan namanya, array NumPy adalah struktur data pusat dari perpustakaan numpy. Nama perpustakaan sebenarnya adalah kependekan dari “Numerik Python” atau “Numerik Python".

Membuat Array NumPy

Cara paling sederhana untuk membuat array di Numpy adalah dengan menggunakan Python Daftar

myPythonList = [1,9,8,3]

Untuk mengonversi daftar python menjadi array numpy dengan menggunakan objek np.array.

numpy_array_from_list = np.array(myPythonList)

Untuk menampilkan isi daftar

numpy_array_from_list

Keluaran:

array([1, 9, 8, 3])

Dalam praktiknya, tidak perlu mendeklarasikan a Python Daftar. Operasi dapat digabungkan.

a  = np.array([1,9,8,3])

CATATAN: Dokumentasi numpy menyatakan penggunaan np.ndarray untuk membuat array. Namun, ini adalah metode yang direkomendasikan.

Anda juga dapat membuat array numpy dari Tuple.

Matematis Operations pada Array

Anda dapat melakukan operasi matematika seperti penjumlahan, pengurangan, pembagian, dan perkalian pada array. Sintaksnya adalah nama array diikuti oleh operasi (+.-,*,/) diikuti oleh operan

Contoh:

numpy_array_from_list + 10

Keluaran:

array([11, 19, 18, 13])

Operasi ini menambahkan 10 ke setiap elemen array numpy.

Bentuk Array

Anda dapat memeriksa bentuk array dengan bentuk objek yang diawali dengan nama array. Dengan cara yang sama, Anda dapat memeriksa tipenya dengan dtypes.

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

(3,)
int64

Integer adalah nilai tanpa desimal. Jika Anda membuat array dengan desimal, maka tipenya akan berubah menjadi float.

#### Different type
b  = np.array([1.1,2.0,3.2])
print(b.dtype)

float64

Array 2 Dimensi

Anda dapat menambahkan dimensi dengan tanda “,”koma

Perhatikan bahwa itu harus berada di dalam tanda kurung []

### 2 dimension
c = np.array([(1,2,3),
              (4,5,6)])
print(c.shape)
(2, 3)

Array 3 Dimensi

Dimensi yang lebih tinggi dapat dibangun sebagai berikut:

### 3 dimension
d = np.array([
    [[1, 2,3],
        [4, 5, 6]],
    [[7, 8,9],
        [10, 11, 12]]
])
print(d.shape)
(2, 2, 3)
Tujuan Kode
Buat susunan susunan([1,2,3])
mencetak bentuknya susunan([.]).bentuk

Apa itu numpy.zeros()?

jumlah.nol() atau np.zeros Python fungsi digunakan untuk membuat matriks yang penuh dengan nol. numpy.zeros() di Python dapat digunakan saat Anda menginisialisasi bobot selama iterasi pertama di TensorFlow dan tugas statistik lainnya.

Sintaks fungsi numpy.zeros()

numpy.zeros(shape, dtype=float, order='C')

Python numpy.zeros() Parameter

Di sini,

  • Bentuknya: adalah bentuk array nol numpy
  • Tipe D: adalah tipe data dalam angka nol yang numpy. Ini opsional. Nilai defaultnya adalah float64
  • Memesan: Defaultnya adalah C yang merupakan gaya baris penting untuk numpy.zeros() di Python.

Python numpy.zeros() Contoh

import numpy as np
np.zeros((2,2))

Keluaran:

array([[0., 0.],
          [0., 0.]])

Contoh numpy zero dengan Datatype

import numpy as np
np.zeros((2,2), dtype=np.int16)

Keluaran:

array([[0, 0],
         [0, 0]], dtype=int16)

Apa itu numpy.ones()?

fungsi np.ones() digunakan untuk membuat matriks yang penuh dengan satuan. numpy.ones() di Python dapat digunakan saat Anda menginisialisasi bobot selama iterasi pertama di TensorFlow dan tugas statistik lainnya.

Python Sintaks numpy.ones()

numpy.ones(shape, dtype=float, order='C')

Python numpy.ones() Parameter

Di sini,

  • Bentuknya: adalah bentuk dari np.ones Python susunan
  • Tipe D: adalah tipe data dalam tipe numpy. Ini opsional. Nilai defaultnya adalah float64
  • Memesan: Defaultnya adalah C yang merupakan gaya baris penting.

Python numpy.ones() Array 2D dengan Contoh Tipe Data

import numpy as np
np.ones((1,2,3), dtype=np.int16)

Keluaran:

array([[[1, 1, 1],        
       [1, 1, 1]]], dtype=int16)

numpy.reshape() berfungsi di Python

Python Bentuk Ulang NumPy fungsi digunakan untuk membentuk array tanpa mengubah datanya. Dalam beberapa kesempatan, Anda mungkin perlu membentuk ulang data dari lebar ke panjang. Anda dapat menggunakan fungsi np.reshape untuk ini.

Sintaks np.reshape()

numpy.reshape(a, newShape, order='C')

Di sini,

a: Array yang ingin Anda bentuk ulang

Bentuk baru: Bentuk keinginan baru

Memesan: Defaultnya adalah C yang merupakan gaya baris penting.

Contoh Bentuk Ulang NumPy

import numpy as np
e  = np.array([(1,2,3), (4,5,6)])
print(e)
e.reshape(3,2)

Keluaran:

 // Before reshape
[[1 2 3] 
 [4 5 6]]
//After Reshape
array([[1, 2],       
	[3, 4],       
	[5, 6]])

numpy.flatten() di Python

Python Ratakan NumPy fungsi digunakan untuk mengembalikan salinan array dalam satu dimensi. Saat Anda berurusan dengan beberapa jaringan saraf seperti convnet, Anda perlu meratakan arraynya. Anda dapat menggunakan fungsi np.flatten() untuk ini.

Sintaks np.flatten()

numpy.flatten(order='C')

Di sini,
Memesan: Defaultnya adalah C yang merupakan gaya baris penting.

Contoh NumPy Ratakan

e.flatten()

Keluaran:

array([1, 2, 3, 4, 5, 6])

Apa yang dimaksud dengan numpy.hstack() Python?

Numpy.hstack adalah fungsi di Python yang digunakan untuk menumpuk urutan array input secara horizontal untuk membuat array tunggal. Dengan fungsi hstack(), Anda dapat menambahkan data secara horizontal. Ini adalah fungsi yang sangat nyaman di NumPy.

Mari pelajari hstack in Python dengan contoh:

Contoh:

## Horitzontal Stack
import numpy as np
f = np.array([1,2,3])
g = np.array([4,5,6])
print('Horizontal Append:', np.hstack((f, g)))

Keluaran:

Horizontal Append: [1 2 3 4 5 6]

Apa yang dimaksud dengan numpy.vstack() Python?

Numpy.vstack adalah fungsi di Python yang digunakan untuk menumpuk urutan array input secara vertikal untuk membuat array tunggal. Dengan fungsi vstack(), Anda dapat menambahkan data secara vertikal.

Mari kita pelajari dengan sebuah contoh:

Contoh:

## Vertical Stack
import numpy as np
f = np.array([1,2,3])
g = np.array([4,5,6])
print('Vertical Append:', np.vstack((f, g)))

Keluaran:

Vertical Append: [[1 2 3]
 [4 5 6]]

Setelah mempelajari NumPy vstack dan hstack, mari pelajari contoh untuk menghasilkan angka acak di NumPy.

Hasilkan Acak Numbers menggunakan NumPy

Untuk menghasilkan angka acak untuk distribusi Gaussian, gunakan:

numpy.random.normal(loc, scale, size)

Di sini,

  • loc: maksudnya. Pusat distribusi
  • Skala: standar deviasi.
  • Ukuran: jumlah pengembalian

Contoh:

## Generate random nmber from normal distribution
normal_array = np.random.normal(5, 0.5, 10)
print(normal_array)			
[5.56171852 4.84233558 4.65392767 4.946659   4.85165567 5.61211317 4.46704244 5.22675736 4.49888936 4.68731125]

Jika diplot distribusinya akan mirip dengan plot berikut

Contoh untuk Menghasilkan Acak Numbers menggunakan NumPy
Contoh untuk Menghasilkan Acak Numbers menggunakan NumPy

Fungsi Asarray NumPy

Fungsi asarray() digunakan ketika Anda ingin mengubah input menjadi array. Inputnya bisa berupa daftar, tupel, ndarray, dll.

sintaks:

numpy.asarray(data, dtype=None, order=None)[source]

Di sini,

data: Data yang ingin Anda konversi menjadi array

tipe d: Ini adalah argumen opsional. Jika tidak ditentukan, tipe data disimpulkan dari data masukan

Memesan: Defaultnya adalah C yang merupakan gaya baris penting. Pilihan lainnya adalah F (gaya Fortan)

Contoh:

Perhatikan matriks 2-D berikut dengan empat baris dan empat kolom yang diisi dengan 1

import numpy as np
A = np.matrix(np.ones((4,4)))

Jika Anda ingin mengubah nilai matriks, Anda tidak bisa. Pasalnya, salinannya tidak bisa diubah.

np.array(A)[2]=2
print(A)			
[[1. 1. 1. 1.]
 [1. 1. 1. 1.] 
 [1. 1. 1. 1.] 
 [1. 1. 1. 1.]]

Matriks tidak dapat diubah. Anda dapat menggunakan asarray jika ingin menambahkan modifikasi pada array aslinya. Mari kita lihat apakah ada perubahan yang terjadi ketika Anda ingin mengubah nilai baris ketiga dengan nilai 2.

np.asarray(A)[2]=2
print(A)

Penjelasan Kode:

np.asarray(A): mengubah matriks A menjadi array

[2]: pilih baris ketiga

Keluaran:

[[1. 1. 1. 1.] 
      [1. 1. 1. 1.] 
      [2. 2. 2. 2.] # new value 
      [1. 1. 1. 1.]]

Apa itu numpy.arange()?

numpy.arange() adalah fungsi numpy bawaan yang mengembalikan objek ndarray yang berisi nilai dengan jarak yang sama dalam interval yang ditentukan. Misalnya, Anda ingin membuat nilai dari 1 hingga 10; Anda dapat menggunakan np.arange() di Python fungsi.

sintaks:

numpy.arange(start, stop, step, dtype)

Python Parameter pengaturan NumPy:

  • Start: Awal interval untuk np.arange in Python fungsi.
  • berhenti: Akhir interval.
  • Langkah: Jarak antar nilai. Langkah defaultnya adalah 1.
  • Tipe D: Merupakan tipe output array untuk rentang NumPy Python.

Contoh:

import numpy np
np.arange(1, 11)

Keluaran:

array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10])

Contoh:

Jika Anda ingin mengubah langkah dalam fungsi arange NumPy ini Python Misalnya, Anda dapat menambahkan angka ketiga di dalam tanda kurung. Ini akan mengubah langkahnya.

import numpy np
np.arange(1, 14, 4)

Keluaran:

array([ 1,  5,  9, 13])

Fungsi NumPy Linspace

Linspace memberikan sampel dengan jarak yang sama.

sintaks:

numpy.linspace(start, stop, num, endpoint)

Di sini,

  • Start: Nilai awal barisan
  • berhenti: Nilai akhir barisan
  • Di: Jumlah sampel yang akan dihasilkan. Standarnya adalah 50
  • Titik akhir: Jika Benar (default), stop adalah nilai terakhir. Jika Salah, nilai penghentian tidak disertakan.

Contoh:

Misalnya, ini dapat digunakan untuk membuat 10 nilai dari 1 hingga 5 dengan jarak yang sama.

import numpy as np
np.linspace(1.0, 5.0, num=10)

Keluaran:

array([1.        , 1.44444444, 1.88888889, 2.33333333, 2.77777778,       3.22222222, 3.66666667, 4.11111111, 4.55555556, 5.        ])

Jika Anda tidak ingin memasukkan digit terakhir dalam interval, Anda dapat menyetel titik akhir ke false

np.linspace(1.0, 5.0, num=5, endpoint=False)

Keluaran:

array([1. , 1.8, 2.6, 3.4, 4.2])

Fungsi LogSpace NumPy di Python

LogSpace mengembalikan angka dengan spasi genap pada skala log. Logspace memiliki parameter yang sama dengan np.linspace.

sintaks:

numpy.logspace(start, stop, num, endpoint)

Contoh:

np.logspace(3.0, 4.0, num=4)

Keluaran:

array([ 1000. ,  2154.43469003,  4641.58883361, 10000.        ])

Terakhir, jika Anda ingin memeriksa ukuran memori suatu elemen dalam array, Anda dapat menggunakan itemsize

x = np.array([1,2,3], dtype=np.complex128)
x.itemsize

Keluaran:

16

Setiap elemen membutuhkan 16 byte.

Mengindeks dan Mengiris Python

Mengiris data adalah hal yang sepele dengan numpy. Kita akan mengiris matriks “e”. Perhatikan bahwa, di Python, Anda perlu menggunakan tanda kurung untuk mengembalikan baris atau kolom
Contoh:

## Slice
import numpy as np
e  = np.array([(1,2,3), (4,5,6)])
print(e)
[[1 2 3]
 [4 5 6]]

Ingat dengan numpy array/kolom pertama dimulai dari 0.

## First column
print('First row:', e[0])

## Second col
print('Second row:', e[1])

Keluaran:

First row: [1 2 3]
Second row: [4 5 6]

In Python, seperti banyak bahasa lainnya,

  • Nilai sebelum koma mewakili baris
  • Nilai pada hak mewakili kolom.
  • Jika Anda ingin memilih kolom, Anda perlu menambahkan : sebelum indeks kolom.
  • : berarti Anda menginginkan semua baris dari kolom yang dipilih.
print('Second column:', e[:,1])
Second column: [2 5]

Untuk mengembalikan dua nilai pertama dari baris kedua. Anda menggunakan : untuk memilih semua kolom hingga kolom kedua

## Second Row, two values
  print(e[1, :2])			
  [4 5]

Fungsi Statistik di Python

NumPy memiliki beberapa fungsi statistik yang berguna untuk menemukan minimum, maksimum, deviasi standar persentil dan varians, dll dari elemen tertentu dalam array. Fungsinya dijelaskan sebagai berikut -

Numpy dilengkapi dengan fungsi statistik yang kuat seperti yang tercantum di bawah ini

fungsi lumpuh
Min np.min()
max np.max()
Berarti np.berarti()
rata-rata np.median()
Standar deviasi np.std()

Perhatikan Array berikut ini:

Contoh:

import numpy as np
normal_array = np.random.normal(5, 0.5, 10)
print(normal_array)

Keluaran:

[5.56171852 4.84233558 4.65392767 4.946659   4.85165567 5.61211317 4.46704244 5.22675736 4.49888936 4.68731125]

Contoh fungsi Statistik NumPy

### Min 
print(np.min(normal_array))

### Max 
print(np.max(normal_array))

### Mean 
print(np.mean(normal_array))

### Median
print(np.median(normal_array))

### Sd
print(np.std(normal_array))

Keluaran:

4.467042435266913
5.612113171990201
4.934841002270593
4.846995625786663
0.3875019367395316

Apa itu produk numpy dot?

Produk numpy.dot adalah perpustakaan yang kuat untuk perhitungan matriks. Misalnya, Anda dapat menghitung perkalian titik dengan np.dot. Perkalian numpy.dot adalah perkalian titik dari a dan b. numpy.dot() di Python menangani array 2D dan melakukan perkalian matriks.

sintaks:

numpy.dot(x, y, out=None)

Parameters

Di sini,

x, y: Memasukkan array. x dan y keduanya harus 1-D atau 2-D agar fungsi np.dot() dapat berfungsi

di luar: Ini adalah argumen keluaran untuk skalar array 1-D yang akan dikembalikan. Jika tidak, ndarray harus dikembalikan.

Pengembalian

Fungsi numpy.dot() di Python mengembalikan produk titik dari dua array x dan y. Fungsi dot() mengembalikan skalar jika x dan y adalah 1-D; jika tidak, ia mengembalikan array. Jika 'out' diberikan maka ia dikembalikan.

Meningkatkan

Produk titik masuk Python memunculkan pengecualian ValueError jika dimensi terakhir x tidak memiliki ukuran yang sama dengan dimensi terakhir kedua y.

Contoh:

## Linear algebra
### Dot product: product of two arrays
f = np.array([1,2])
g = np.array([4,5])
### 1*4+2*5
np.dot(f, g)

Keluaran:

14

Perkalian Matriks di Python

Fungsi Numpy matmul() digunakan untuk mengembalikan produk matriks dari 2 array. Inilah cara kerjanya

1) Array 2-D, ia mengembalikan produk normal

2) Dimensi > 2, produk diperlakukan sebagai tumpukan matriks

3) Array 1-D pertama kali dipromosikan menjadi matriks, dan kemudian produknya dihitung

sintaks:

numpy.matmul(x, y, out=None)

Di sini,

x, y: Memasukkan array. skalar tidak diperbolehkan

di luar: Ini adalah parameter opsional. Biasanya output disimpan di ndarray

Contoh:

Dengan cara yang sama, Anda dapat menghitung perkalian matriks dengan np.matmul

### Matmul: matruc product of two arrays
h = [[1,2],[3,4]] 
i = [[5,6],[7,8]] 
### 1*5+2*7 = 19
np.matmul(h, i)

Keluaran:

array([[19, 22],       
            [43, 50]])

penentu

Terakhir, jika Anda perlu menghitung determinan, Anda dapat menggunakan np.linalg.det(). Perhatikan bahwa numpy menangani dimensi.

Contoh:

## Determinant 2*2 matrix
### 5*8-7*6np.linalg.det(i)

Keluaran:

-2.000000000000005

Kesimpulan

  • Python adalah perpustakaan sumber terbuka yang tersedia di Python, yang membantu dalam matematika, ilmiah, teknik, dan pemrograman ilmu data.
  • numpy.zeros() atau np.zeros Python fungsi digunakan untuk membuat matriks yang penuh dengan nol.
  • numpy.ones() di Python dapat digunakan saat Anda menginisialisasi bobot selama iterasi pertama di TensorFlow dan tugas statistik lainnya.
  • Python Fungsi NumPy Reshape digunakan untuk membentuk array tanpa mengubah datanya.
  • Python Fungsi NumPy Flatten digunakan untuk mengembalikan salinan array dalam satu dimensi.
  • Numpy.hstack adalah fungsi di Python yang digunakan untuk menumpuk urutan array input secara horizontal untuk membuat array tunggal.
  • Numpy.vstack adalah fungsi di Python yang digunakan untuk menumpuk urutan array input secara vertikal untuk membuat array tunggal.
  • numpy.arange() adalah fungsi numpy bawaan yang mengembalikan objek ndarray yang berisi nilai dengan jarak yang sama dalam interval yang ditentukan.
  • Produk Numpy.dot adalah perpustakaan yang kuat untuk perhitungan matriks.
  • Fungsi Numpy matmul() digunakan untuk mengembalikan produk matriks dari 2 array.