Cara menghapus nilai nan dari array numpy (3 metode)


Anda dapat menggunakan metode berikut untuk menghapus nilai NaN dari array NumPy:

Metode 1: Gunakan isnan()

 new_data = data[~np. isnan (data)]

Metode 2: Gunakan isfinite()

 new_data = data[np. isfinite (data)]

Metode 3: Gunakan logika_tidak()

 new_data = data[np. logical_not (np. isnan (data))]

Masing-masing metode ini menghasilkan hasil yang sama, namun metode pertama adalah metode yang paling singkat untuk dilakukan sehingga cenderung paling sering digunakan.

Contoh berikut menunjukkan cara menggunakan masing-masing metode dalam praktik.

Contoh 1: Hapus nilai NaN menggunakan isnan()

Kode berikut menunjukkan cara menghapus nilai NaN dari array NumPy menggunakan fungsi isnan() :

 import numpy as np

#create array of data
data = np. array ([4, np.nan, 6, np.nan, 10, 11, 14, 19, 22])

#define new array of data with nan values removed
new_data = data[~np. isnan (data)]

#view new array
print (new_data)

[4. 6. 10. 11. 14. 19. 22.]

Perhatikan bahwa kedua nilai NaN telah berhasil dihapus dari array NumPy.

Metode ini hanya menyimpan semua elemen array yang bukan nilai (~)NaN.

Contoh 2: Hapus nilai NaN menggunakan isfinite()

Kode berikut menunjukkan cara menghapus nilai NaN dari array NumPy menggunakan fungsi isfinite() :

 import numpy as np

#create array of data
data = np. array ([4, np.nan, 6, np.nan, 10, 11, 14, 19, 22])

#define new array of data with nan values removed
new_data = data[np. isfinite (data)]

#view new array
print (new_data)

[4. 6. 10. 11. 14. 19. 22.]

Perhatikan bahwa kedua nilai NaN telah berhasil dihapus dari array NumPy.

Metode ini hanya menyimpan semua elemen array yang nilainya terbatas.

Karena nilai NaN tidak terbatas, maka nilai tersebut dihapus dari tabel.

Contoh 3: Hapus nilai NaN menggunakan logika_not()

Kode berikut menunjukkan cara menghapus nilai NaN dari array NumPy menggunakan fungsi logika_not() :

 import numpy as np

#create array of data
data = np. array ([4, np.nan, 6, np.nan, 10, 11, 14, 19, 22])

#define new array of data with nan values removed
new_data = data[np. logical_not (np. isnan (data))]
#view new array
print (new_data)

[4. 6. 10. 11. 14. 19. 22.]

Perhatikan bahwa kedua nilai NaN telah berhasil dihapus dari array NumPy.

Meskipun metode ini setara dengan dua metode sebelumnya, metode ini memerlukan lebih banyak pengetikan dan oleh karena itu tidak sering digunakan.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan operasi umum lainnya dengan Python:

Pandas: Cara mengganti string kosong dengan NaN
Pandas: cara mengganti nilai NaN dengan string

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *