Cara menggunakan np nan python

Missing value umumnya selalu terjadi di dalam dataset. Missing value harus ditangani sebelum dataset diproses dengan machine learning

Ada beberapa cara menangani missing value adalah seperti menghapusnya atau menggantinya dengan nilai lain

Contents

Mencari Missing Value

Jika data terdiri dari ratusan, ribuan bahkan jutaan baris tentu akan susah dalam menemukan nilai field yang kosong

Python Pandas memungkinkan kita dapat menemukan missing value secara cepat dengan fungsi isnull(), isna()

fungsi isna() mengembalikan nilai boolean sedangkan fungsi kebalikannya adalah notna()

Disini kita akan coba langsung menggunakan dataset terkenal yaitu dataset titanic untuk mencari nilai yang kosong dan bagaimana cara menghandelnya

Pertama download dulu datasetnya

Baca dataset dan gunakan fungsi isna() dan notna()

Hasil hasil fungsi diatas akan menjadi kurang dipahami karena banyaknya baris dan kolom data

Lakukan agregasi data agar mudah dipahami dengan fungsi sum()

Dengan bantuan fungsi isna() dan sum() kita tahu bahwa dalam dataset semua kolom tidak ada nilai yang kosong kecuali kolom Age dengan 177 missing value, Kolom Cabin 687 dan kolom Embarked 2

Menangani Missing Value

Secara umum ada 2 cara untuk menangani missing value yaitu dengan menghapusnya atau menggantinya dengan nilai yang lain

Kita dapat gunakan fungsi dropna() untuk menghapus data yang tidak memiliki nilai dan fungsi fillna() untuk mengisi nilai yang kosong

Pada dataset titanic, terdapat 3 kolom yang memiliki missing value yaitu Age, Cabin dan Embarked

Kita akan perlakukan setiap kolom dengan beda penanganan (ini sekedar contoh yaa :D)

  1. Missing value di kolom Age akan diisi dengan rata-rata dari semua umur penumpang (menggunakan mean)
  2. Missing value di kolom Cabin akan dihapus
  3. Missing value di kolom Embarked akan diisi dengan nilai Embarked yang paling banyak muncul di dataset (menggunakan modus)

Missing Value Kolom Age

Pertama, kita duplikat dulu dataframe-nya

kedua, cari nilai rata-rata dari kolom Age

Ketiga, Isikan nilai kosong di kolom Age dengan nilai rata-rata yang didapatkan

Keempat, cek kembali apakah masih terdapat missing value di kolom Age

# Langkah 1 rata_umur = df['Age'].mean() # Langkah 2 df['Age'] = df['Age'].fillna(rata_umur) # Langkah 3 df['Age'].isna().sum()

Missing Value Kolom Cabin

Untuk kolom Cabin kita akan hapus nilai yang kosong

Perhatian, Jika kita hapus missing value yang ada di kolom maka baris tersebut akan dihapus juga

Jadi misal kolom Cabin mempunyai missing value sebanyak 687 dan jika kita hapus maka 687 baris dari dataset akan terhapus

Karena ini hanya contoh penanganan maka abaikan saja 😀

Baiknya yang dihapus adalah kolom Cabin saja karena terlalu banyak missing value

Oke, pertama kita duplikat dan gunakan fungsi dropna() untuk menghapus missing value

df.drop('Cabin', axis=1, inplace=True)

Missing Value Kolom Embarked

Untuk kolom Embarked terdapat 2 missing value

Kita akan isi 2 nilai tadi dengan nilai yang paling banyak muncul mengingat tipe data dari kolom ini adalah kategorical data yang berupa string S, C dan Q

Pertama, kita duplikat dulu dataframe-nya

kedua, cari nilai paling banyak muncul dari kolom Embarked

Ketiga, Isikan nilai kosong di kolom Embarked dengan nilai modus yang didapatkan

Keempat, cek kembali apakah masih terdapat missing value di kolom Embarked

# Langkah 1 modus = df['Embarked'].mode()[0] # Langkah 2 df['Embarked'] = df['Embarked'].fillna(modus) # Langkah 3 df['Embarked'].isna().sum()

Selamat anda telah berhasil mengetahui cara menemukan missing value di dataset dan bagaimana cara menanganinya

Untuk menangani missing value tentunya perlu diidentifikasi terlebih dahulu apakah data tersebut akan dihapus atau direplace

nan adalah np. nan ] Benar karena wadah daftar di Python memeriksa identitas sebelum memeriksa kesetaraan. Namun, ada “rasa” nan berbeda tergantung pada cara pembuatannya. float(‘ nan ‘) membuat objek yang berbeda dengan id yang berbeda sehingga float(‘ nan ‘) is float(‘ nan ‘) sebenarnya memberikan False!!Dengan demikian, apa yang menyebabkan NaN di Python?Aturan dasarnya adalah: Jika implementasi suatu fungsi melakukan salah satu dosa di atas, Anda mendapatkan NaN . Untuk fft , misalnya, Anda bertanggung jawab untuk mendapatkan NaN s jika nilai input Anda sekitar 1e1010 atau lebih besar dan kehilangan presisi secara diam-diam jika nilai input Anda sekitar 1e-1010 atau lebih kecil.Selanjutnya, apa itu Numpy NaN? tidak . nan memungkinkan untuk operasi vektor; ini adalah nilai float, sementara None , menurut definisi, memaksa tipe objek, yang pada dasarnya menonaktifkan semua efisiensi dalam numpy .Tahu juga, apa tipe data NaN Python?Cara menetapkan NaN ke variabel dengan PythonNaN , singkatan dari bukan angka, adalah tipe data numerik yang digunakan untuk mewakili nilai apa pun yang tidak ditentukan atau tidak dapat disajikan.Catatan: NaN tidak sama dengan infinity di Python.Catatan: Anda juga dapat menggunakan pustaka Desimal Python alih-alih float.Bagaimana cara menemukan nilai NaN dengan Python?PendeknyaUntuk mendeteksi nilai NaN, numpy menggunakan np. isnan() .Untuk mendeteksi nilai NaN, panda menggunakan salah satu dari . isna() atau . isnull() . Nilai NaN diwarisi dari fakta bahwa panda dibangun di atas numpy, sedangkan nama kedua fungsi tersebut berasal dari R’s DataFrames, yang struktur dan fungsinya coba ditiru oleh panda.

Postingan terbaru

LIHAT SEMUA