Cara memfilter array numpy (4 contoh)
Anda dapat menggunakan metode berikut untuk memfilter nilai array NumPy:
Metode 1: Filter nilai berdasarkan satu kondisi
#filter for values less than 5 my_array[my_array < 5 ]
Metode 2: Filter Nilai Menggunakan Kondisi “ATAU”.
#filter for values less than 5 or greater than 9 my_array[(my_array < 5 ) | (my_array > 9 )]
Metode 3: Filter Nilai Menggunakan Kondisi “DAN”.
#filter for values greater than 5 and less than 9 my_array[(my_array > 5 ) & (my_array < 9 )]
Metode 4: Filter nilai yang terdapat dalam daftar
#filter for values that are equal to 2, 3, 5, or 12 my_array[np. in1d (my_array, [2, 3, 5, 12])]
Tutorial ini menjelaskan cara menggunakan setiap metode dalam praktik dengan array NumPy berikut:
import numpy as np
#create NumPy array
my_array = np. array ([1, 2, 2, 3, 5, 6, 7, 10, 12, 14])
#view NumPy array
my_array
array([ 1, 2, 2, 3, 5, 6, 7, 10, 12, 14])
Contoh 1: Filter nilai berdasarkan suatu kondisi
Kode berikut menunjukkan cara memfilter nilai array NumPy berdasarkan satu kondisi:
#filter for values less than 5 my_array[(my_array < 5 )] array([1, 2, 2, 3]) #filter for values greater than 5 my_array[(my_array > 5 )] array([6,7,10,12,14]) #filter for values equal to 5 my_array[(my_array == 5 )] array([5])
Contoh 2: Filter nilai menggunakan kondisi “ATAU”.
Kode berikut menunjukkan cara memfilter nilai array NumPy menggunakan kondisi “ATAU”:
#filter for values less than 5 or greater than 9 my_array[(my_array < 5 ) | (my_array > 9 )] array([ 1, 2, 2, 3, 10, 12, 14])
Filter ini mengembalikan nilai array NumPy kurang dari 5 atau lebih besar dari 9.
Contoh 3: Filter nilai menggunakan kondisi “DAN”.
Kode berikut menunjukkan cara memfilter nilai array NumPy menggunakan kondisi “DAN”:
#filter for values greater than 5 and less than 9 my_array[(my_array > 5 ) & (my_array < 9 )] array([6, 7])
Filter ini mengembalikan nilai dari array NumPy yang lebih besar dari 5 dan kurang dari 9.
Contoh 4: memfilter nilai yang terdapat dalam daftar
Kode berikut menunjukkan cara memfilter nilai array NumPy yang terdapat dalam daftar:
#filter for values that are equal to 2, 3, 5, or 12 my_array[np. in1d (my_array, [2, 3, 5, 12])] array([ 2, 2, 3, 5, 12])
Filter ini hanya mengembalikan nilai yang sama dengan 2, 3, 5, atau 12.
Catatan : Anda dapat menemukan dokumentasi lengkap untuk fungsi NumPy in1d() di sini .
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan operasi pemfilteran umum lainnya dengan Python:
Cara memfilter baris Pandas DataFrame yang berisi string tertentu
Cara memfilter Pandas DataFrame pada berbagai kondisi
Cara menggunakan filter “TIDAK DALAM” di Pandas DataFrame