NumPy Array Filter

 


Filtering Arrays

Mengeluarkan beberapa elemen dari array yang ada dan membuat array baru darinya disebut filtering (penyaringan).

Di NumPy, kita memfilter array menggunakan boolean index list.

Daftar index boolean adalah daftar boolean yang sesuai dengan index dalam array.

Jika nilai pada index adalah True elemen yang terkandung dalam array yang difilter, jika nilai pada index False itu adalah elemen tersebut dikecualikan dari array yang difilter. 

Contoh
Buat array dari elemen pada index 0 dan 2.
import numpy as np

arr = np.array([41424344])

x = [TrueFalseTrueFalse]

newarr = arr[x]

print(newarr)

Contoh diatas akan kembali [41, 43], mengapa?

Karna array baru hanya berisi nilai dimana array filter memiliki nilai True, dalam hal ini, index 0 dan 2.

Creating the Filter Array

Dalam contoh diatas, kita mengkodekan nilai True dan secara keras False, tetapi penggunaan yang umun adalah membuat array filter berdasarakn kondisi.

Contoh
Buat array filter yang hanya akan mengembalikan nilai yang lebih tinggi dari 42.
import numpy as np

arr = np.array([41424344])

# Buat list kosong
filter_arr = []

# melalui setiap elemen di arr
for element in arr:
  # jika elemen lebih tinggi dari 42, atur nilainya ke True, jika tidak False:
  if element > 42:
    filter_arr.append(True)
  else:
    filter_arr.append(False)

newarr = arr[filter_arr]

print(filter_arr)
print(newarr)

Contoh
Buat array filter yang hanya akan mengembalikan elemen genap dari array asli.
import numpy as np

arr = np.array([1234567])

# Buat list kosong
filter_arr = []

# melalui setiap elemen di arr
for element in arr:
  # jika elemen habis dibagi 2, atur nilainya ke True, jika tidak False
  if element % 2 == 0:
    filter_arr.append(True)
  else:
    filter_arr.append(False)

newarr = arr[filter_arr]

print(filter_arr)
print(newarr)

Creating Filter Directly From Array

Contoh diatas adalah tugas yang cukup umum di NumPy dan NumPy menyediakan cara yang bagus untuk mengatasinya.

Kita dapat langsung mengganti array alih-alih variable yang dapat diubah dalam kondisi kita dan itu akan berfungsi seperti yang kita harapkan.

Contoh
Buat array filter yang hanya akan mengembalikan nilai yang lebih tinggi dari 42. 
import numpy as np

arr = np.array([41424344])

filter_arr = arr 42

newarr = arr[filter_arr]

print(filter_arr)
print(newarr)

Contoh
Buat array filter yang hanya akan mengembalikan elemen genap dari array  asli.
import numpy as np

arr = np.array([1234567])

filter_arr = arr 2 == 0

newarr = arr[filter_arr]

print(filter_arr)
print(newarr)

Komentar

Postingan populer dari blog ini

NumPy Array Search

NumPy Array Split

NumPy Array Iterating