Selamat Datang Di Kelas AI (Beta)

Data Unik, Data Hilang & Interpolasi Pada Pandas Python

Tim Kelas AI - 01 Jan 2025 (4 Minute Read)

Tim Kelas AI, 01 Jan 2025
4 Minute Read

Data unik adalah kelompok data yang berisi data yang berbeda-beda saja dari sebuah baris data.  Data hilang, adalah data yang kosong atau tidak ada (empty) dalam sebuah dataframe. Dan interpolasi adalah teknik mengisi data hilang dengan rata-rata data antara sesuai dengan fungsi deret dari data-data sebelumnya dan setelahnya. Kita akan membaahas semuanya disini.

Data Unik

Data unik adalah kelompok data yang berisi data yang berbeda-beda saja dari sebuah baris data. Yup, dia unik. Jika data unik ini ada dua buah, dia tetap dianggap satu. Pertama, kita coba buat dulu dataframenya seperti ini:

import pandas as pd

data = [
    ['Imron','Kedokteran','Forensik'],
    ['Suha','Ekonomi Bisnis','Manajemen'],
    ['Sutardi','Kedokteran','Forensi'],
    ['Eko','MIPA','Matematika'],
    ['Kadek','Ilmu Komputer','Manajemen Informatika'],
    ['Simon','Pertanian','Teknologi Pertanian'],
    ['Putri','Pertanian','Biotek'],
    ['Silvy','MIPA','Biologi Molekuler'],
    ['Rey','MIPA','Matematika'],
    ['Myth','Ekonomi Bisnis','Ekonomi Islam'],
    ['Sol','MIPA','Kimia']
]

df = pd.DataFrame(data, columns=['nama','fakultas','jurusan'])
df
nama fakultas jurusan
0 Imron Kedokteran Forensik
1 Suha Ekonomi Bisnis Manajemen
2 Sutardi Kedokteran Forensi
3 Eko MIPA Matematika
4 Kadek Ilmu Komputer Manajemen Informatika
5 Simon Pertanian Teknologi Pertanian
6 Putri Pertanian Biotek
7 Silvy MIPA Biologi Molekuler
8 Rey MIPA Matematika
9 Myth Ekonomi Bisnis Ekonomi Islam
10 Sol MIPA Kimia

Untuk mencari data unik dari sebuah kolom, kita dapat menggunakan method .unique() seperti ini:

df['fakultas'].unique()
Output:
array(['Kedokteran', 'Ekonomi Bisnis', 'MIPA', 'Ilmu Komputer', 'Pertanian'], dtype=object)

Dari hasil diatas, kita menemukan bahwa didalam kolom 'fakultas' hanya ada data: 'Kedokteran', 'Ekonomi Bisnis', 'MIPA', 'Ilmu Komputer' dan 'Pertanian'.

Jumlah Data Unik

Mengetahui data unik saja memang sudah cukup, tapi kita juga bisa mengetahui data unik serta jumlahnya dalam sebuah dataframe. Kita bisa menggunakan method .value_counts() untuk melakukannya. Kira-kira seperti ini:

fakultas = df['fakultas'].value_counts()
fakultas
fakultas count
MIPA 4
Kedokteran 2
Ekonomi Bisnis 2
Pertanian 2
Ilmu Komputer 1

Kita juga bisa mengvisualisasikannya dalam diagram lingkaran menggunakan matplotlib seperti ini:

import matplotlib.pyplot as plt

fakultas.plot.pie(
    figsize=(4,4),
    autopct='%1.2f%%',
    table=True
)

plt.show()

Data Hilang

Data hilang, adalah data yang kosong atau tidak ada (empty) dalam sebuah dataframe. Misalnya pada dataset Urban Population & Life Expectancy. Coba download dulu datasetnya dan buka melalui pandas seperti ini:

!wget --no-check-certificate \
    https://cdn.kelasai.id/indonesian_life_expectancy.xlsx
Output:
--2024-12-26 08:03:26-- https://cdn.kelasai.id/indonesian_life_expectancy.xlsx Resolving cdn.kelasai.id (cdn.kelasai.id)... 154.41.240.165, 2a02:4780:6:1252:0:2588:d4de:4 Connecting to cdn.kelasai.id (cdn.kelasai.id)|154.41.240.165|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 11809 (12K) [text/plain] Saving to: 'indonesian_life_expectancy.xlsx' indonesian_life_exp 100%[===================>] 11.53K --.-KB/s in 0.001s 2024-12-26 08:03:27 (22.1 MB/s) - 'indonesian_life_expectancy.xlsx' saved [11809/11809]
df = pd.read_excel('indonesian_life_expectancy.xlsx')
df.head()
year population urban percentage male u5 mortality female u5 mortality male expectancy female ex
0 1960 87751068 14.586 236.9 208.7 44.475 49.009
1 1961 90098394 14.821 230.7 203.2 45.098 49.604
2 1962 92518377 15.058 224.8 197.9 45.713 50.185
3 1963 95015297 15.299 218.9 192.6 46.322 50.752
4 1964 97596733 15.543 213.1 187.2 46.927 51.306

Untuk mengetahui jumlah data hilang dalam sebuah datframe, kita bisa menggunakan method .isnull() ditambah method .sum() untuk menghitung jumlahnya. Kira-kira seperti ini:

df.isnull().sum()
0
year 0
population 0
urban percentage 0
male u5 mortality 2
female u5 mortality 6
male expectancy 0
female ex 0

Dari hasil diatas kita dapat mengetahui bahwa pada kolom 'male u5 mortality' ada dua buah data hilang, dan kolom 'female u5 mortality' ada 6 data hilang.

Mengatasi Data Hilang

Ada beberapa teknik dalam mengatasi data hilang, yaitu: menghapusnya, menggantinya dengan nilai rata-rata dan melakukan interpolasi. Menghapus seluruh data (satu row) adalah langkah paling bijak ketika bertemu dengan data hilang. Hal ini untuk menghindari bias reduktif yang mampu mempengaruhi sistem.

Untuk menghapus data hilang, kita bisa menggunakan method .dropna() dari python seperti ini:

df.dropna(inplace=True)
df.isnull().sum()
0
year 0
population 0
urban percentage 0
male u5 mortality 0
female u5 mortality 0
male expectancy 0
female ex 0

Sekarang data-data yang memiliki data hilang sudah terhapus.

Interpolasi

Interpolasi adalah proses mengisi data hilang dengan data perkiraan diantara dua buah data (data sebelumnya dan data setelahnya) berdasarkan fungsi tertentu.

Misal ada sebuah deret seperti berikut: 2, 4, 6, n, 10. Berapakah nilai 'n'? yup, jawabannya adalah 8. Deret tersebut adalah deret linear dengan fungsi f(x) = 2x. So, untuk mencari tau berapakah angka yang pantas untuk menggantikan nilai 'n', kita tinggal lihat saja 'n' itu adalah data keberapa, yaitu data ke-4. So tinggal masukan saja ke fungsi f(x) = 2 * 4 = 8.

Untuk melakukan interpolasi, kita bisa menggunakan method .interpolate() dari pandas yang bisa diisi dengan metode interpolasi yang ingin kita gunakan seperti berikut:

df.interpolate(inplace=True)
df.isnull().sum()
0
year 0
population 0
urban percentage 0
male u5 mortality 0
female u5 mortality 0
male expectancy 0
female ex 0

Dengan interpolasi, kita bisa mengisi kekosongan data tanpa perlu menghapusnya. Artinya jumlah data kita akan tetap sama.

Baca Juga:

Artikel yang mungkin relate buat kamu

001

Pandas (Python for Data Science) adalah sebuah library atau package pada bahasa pemrograman Python yang memungkinkan kita untuk membuat, mengolah, dan mengelola data dalam bentuk ...

002

Kita juga bisa membuka file dalam bentuk excel dan csv dengan menggunakan pandas, sehingga hasilnya dapat diolah dalam bentuk dataframe. Kita akan membahasnya pada modul ...


Baca Artikel Lainnya +