Cara menggunakan DROPNA pada 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

  • 1 Mencari Missing Value
  • 2 Menangani Missing Value
      • 2.0.1 Missing Value Kolom Age
      • 2.0.2 Missing Value Kolom Cabin
      • 2.0.3 Missing Value Kolom Embarked

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()

Cara menggunakan DROPNA pada Python
Cara menggunakan DROPNA pada Python

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

Lakukan agregasi data agar mudah dipahami dengan fungsi sum()

Cara menggunakan DROPNA pada Python

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

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

Post navigation

Kapan kita bisa menggunakan data Dropna?

Pada dasarnya, method dropna() bisa digunakan untuk menghapus baris atau kolom yang mengandung missing values. Kita hanya perlu menentukan axis-nya, dimana 0 untuk menghapus baris dan 1 untuk menghapus kolom.

Bagaimana cara menangani missing data?

Salah satu cara yang dapat dilakukan untuk menangani missing data adalah dengan mengisi missing data dengan nilai-nilai yang mungkin berdasarkan informasi yang tersedia pada data atau dikenal dengan imputasi. Mean dan Algoritma K-Means merupakan metode yang dapat digunakan untuk imputasi missing data.

Kenapa kita memerlukan representasi missing value?

Salah satu alasan terjadinya missing value adalah tidak terkumpulnya beberapa informasi. Misalnya beberapa orang menolak untuk mengisi data berat badan, pendapatan bulanan, keterangan usia, dan lain-lain. Kondisi ini menyebabkan informasi yang dikumpulkan belum clear sehingga sulit untuk dilakukan analisis.

Apa yang dimaksud dengan missing data?

Data hilang atau Missing Data atau Missing value dapat diartikan sebagai data atau informasi yang “hilang” atau tidak tersedia mengenai subjek penelitian pada variabel tertentu akibat faktor non sampling error.