Dalam sebuah dataset, sebagian besar data biasanya memiliki pola yang relatif mirip. Namun, terkadang ada satu atau beberapa nilai yang terlihat jauh berbeda dari data lainnya. Misalnya, jika sebagian besar nilai berada di antara 50–80, tetapi terdapat satu nilai 250. Data seperti ini disebut outlier.
Apakah data yang berbeda jauh selalu berarti data tersebut salah? Belum tentu. Justru di sinilah outlier menjadi menarik untuk dipelajari.
Apa itu Outlier?
Outlier adalah data yang memiliki nilai jauh berbeda dari sebagian besar data dalam suatu kumpulan. Sederhananya, outlier merupakan data yang berada di luar pola umum dataset.
Contohnya, terdapat data nilai ujian:
72, 75, 78, 80, 74, 77, 76, 79, 15Sebagian besar nilai berada di sekitar 70–80, sedangkan nilai 15 terlihat sangat berbeda. Nilai tersebut bisa menjadi outlier.
Namun, kita tidak bisa langsung menyimpulkan bahwa angka 15 merupakan kesalahan. Bisa saja siswa tersebut memang mendapatkan nilai 15. Oleh karena itu, menemukan outlier bukan berarti langsung menghapusnya.
Mengapa Outlier Bisa Muncul?
Outlier dapat muncul karena berbagai alasan. Beberapa di antaranya berasal dari kesalahan saat proses pengumpulan atau input data, tetapi ada juga yang memang menggambarkan kondisi sebenarnya.
Contohnya:
- Kesalahan memasukkan angka
- Kesalahan satuan
- Data hasil pengukuran yang tidak normal
- Kesalahan sistem atau sensor
- Kejadian yang memang jarang terjadi
- Perbedaan karakteristik objek dengan data lainnya
Misalnya sebuah dataset berisi tinggi badan siswa dalam satuan sentimeter. Sebagian besar data berada di sekitar 150–180 cm, tetapi terdapat nilai 1750 cm.
Nilai tersebut kemungkinan besar bukan kondisi sebenarnya, melainkan kesalahan input atau satuan.
Berbeda jika sebuah dataset penjualan memiliki satu hari dengan jumlah transaksi yang jauh lebih tinggi dibandingkan hari lainnya. Data tersebut mungkin memang benar karena sedang terjadi promosi besar.
Apakah Outlier Selalu Merupakan Kesalahan?
Tidak.
Ini merupakan salah satu hal penting dalam data cleaning. Outlier memang terlihat berbeda, tetapi perbedaan tersebut tidak otomatis membuat datanya salah.
Bayangkan sebuah toko memiliki data penjualan selama 30 hari. Hampir setiap hari terdapat sekitar 50–100 transaksi, tetapi pada satu hari terdapat 500 transaksi.
Angka 500 dapat dianggap sebagai outlier karena jauh dari pola data lainnya. Namun, sebelum menghapusnya, kita perlu mencari tahu penyebabnya.
Mungkin pada hari tersebut toko sedang mengadakan promo. Jika memang benar, maka data 500 transaksi justru merupakan informasi penting dan sebaiknya tetap dipertahankan.
Jadi, outlier harus diperiksa terlebih dahulu sebelum diputuskan untuk dihapus atau dipertahankan.
Bagaimana Cara Menemukan Outlier?
Ada beberapa metode yang dapat digunakan untuk menemukan outlier. Dua metode yang cukup umum digunakan adalah IQR (Interquartile Range) dan Z-score.
1. Menggunakan IQR
IQR merupakan jarak antara kuartil pertama (Q1) dan kuartil ketiga (Q3).
Rumusnya:
IQR = Q3 - Q1Kemudian batas bawah dan batas atas dapat dihitung menggunakan:
Batas bawah = Q1 - 1.5 × IQR
Batas atas = Q3 + 1.5 × IQRData yang berada di luar batas tersebut dapat dianggap sebagai kandidat outlier.
Metode IQR cukup sering digunakan karena relatif sederhana dan tidak terlalu bergantung pada distribusi normal data.
Kita akan mempraktikan menggunakan metode IQR di pandas dengan data nilai di bawah ini.
import pandas as pd
data = {
"Nilai": [72, 75, 78, 80, 74, 77, 76, 79, 81, 73,
82, 78, 75, 80, 77, 74, 83, 76, 79, 15]
}
df = pd.DataFrame(data)
Q1 = df["Nilai"].quantile(0.25)
Q3 = df["Nilai"].quantile(0.75)
IQR = Q3 - Q1
batas_bawah = Q1 - 1.5 * IQR
batas_atas = Q3 + 1.5 * IQR
print("Q1:", Q1)
print("Q3:", Q3)
print("IQR:", IQR)
print("Batas bawah:", batas_bawah)
print("Batas atas:", batas_atas)
outlier = df[
(df["Nilai"] < batas_bawah) |
(df["Nilai"] > batas_atas)
]
print("\nData yang terdeteksi sebagai outlier:")
print(outlier)
2. Menggunakan Z-Score
Z-score menunjukkan seberapa jauh suatu nilai dari rata-rata dalam satuan standar deviasi.
Secara sederhana:
Z = (x - μ) / σKeterangan:
x= nilai dataμ= rata-rataσ= standar deviasi
Semakin jauh nilai Z dari 0, semakin jauh posisi data tersebut dari rata-rata.
Dalam beberapa kasus, nilai dengan nilai absolut Z-score yang cukup tinggi dapat ditandai sebagai kandidat outlier. Namun, batas yang digunakan tetap perlu disesuaikan dengan karakteristik dataset.
Kita juga akan mempraktikan metode Z-Score dengan kode di bawah ini.
import pandas as pd
# Membuat dataset
data = {
"ID": range(1, 21),
"Nilai": [
72, 75, 78, 80, 74,
77, 76, 79, 81, 73,
82, 78, 75, 80, 77,
74, 83, 76, 79, 15
]
}
df = pd.DataFrame(data)
# Menghitung rata-rata
mean = df["Nilai"].mean()
# Menghitung standar deviasi
std = df["Nilai"].std()
# Menghitung Z-score
df["Z_Score"] = (df["Nilai"] - mean) / std
# Menampilkan seluruh data
print("Data dengan Z-score:")
print(df.to_string(index=False))
# Menentukan outlier
# Data dengan |Z-score| > 3 dianggap sebagai kandidat outlier
outlier = df[df["Z_Score"].abs() > 3]
print("\nData yang terdeteksi sebagai outlier:")
print(outlier.to_string(index=False))
Melihat Outlier dengan Boxplot
Selain menggunakan perhitungan, outlier juga dapat lebih mudah dipahami secara visual menggunakan boxplot.
Boxplot menampilkan distribusi data melalui beberapa bagian seperti median, kuartil, serta rentang data. Titik yang berada jauh di luar pola utama dapat terlihat sebagai titik terpisah.
Mau Kuasai Mengenal Outlier: Data yang Berbeda dari Pola Umumnya Sampai Bisa Praktik Langsung?
Materi ini juga kami ajarkan langsung di kelas Edusoft Center, dibimbing mentor, sampai kamu bisa praktik nyata — bukan cuma baca teori.
Tanya Kursus via WhatsApp Lihat contoh project nyata dari siswa kami →
Contoh sederhana:
72 74 75 76 77 78 79 80 81 82 83 15
|===============================|-------------------------------------|
data utama outlierDalam praktik analisis data, visualisasi seperti boxplot membantu kita melihat apakah sebuah nilai memang terlihat berbeda dari sebagian besar data.
Untuk melihat outlier secara sederhana, kita bisa menggunakan Python dengan library pandas dan matplotlib.
Contoh dataset:
import pandas as pd
import matplotlib.pyplot as plt
# Membuat dataset
data = {
"ID": range(1, 21),
"Nilai": [
72, 75, 78, 80, 74,
77, 76, 79, 81, 73,
82, 78, 75, 80, 77,
74, 83, 76, 79, 15
]
}
df = pd.DataFrame(data)
# Membuat boxplot
plt.figure(figsize=(8, 5))
plt.boxplot(df["Nilai"])
plt.title("Boxplot Nilai Ujian")
plt.ylabel("Nilai")
plt.xticks([1], ["Nilai Ujian"])
plt.show()Ketika kode tersebut dijalankan, akan muncul boxplot dari data nilai yang digunakan.
Nilai yang jauh dari kumpulan data utama dapat terlihat sebagai titik yang berada di luar area boxplot.

Dengan praktik sederhana ini, kita dapat melihat bahwa proses menemukan outlier tidak selalu harus dilakukan dengan melihat tabel data satu per satu. Visualisasi dapat membantu memberikan gambaran yang lebih mudah dipahami.
Bagaimana Cara Menangani Outlier?
Setelah menemukan outlier, langkah berikutnya bukan langsung menekan tombol delete. Kita perlu menentukan terlebih dahulu apakah data tersebut merupakan kesalahan atau memang menggambarkan kondisi yang sebenarnya.
Beberapa pendekatan yang dapat digunakan antara lain:
Menghapus Outlier
Jika setelah diperiksa ternyata outlier berasal dari kesalahan input, data tersebut dapat diperbaiki atau dihapus.
Misalnya:
Tinggi badan:
- 160
- 165
- 172
- 168
- 1750
Jika 1750 ternyata merupakan kesalahan input, data tersebut dapat diperbaiki berdasarkan sumber data yang benar.
Mempertahankan Outlier
Jika data tersebut valid dan memang menggambarkan kejadian nyata, outlier sebaiknya tetap dipertahankan.
Contohnya adalah data penjualan yang meningkat drastis karena adanya promosi. Nilai tersebut memang berbeda dari pola normal, tetapi tetap merupakan informasi yang valid.
Melakukan Transformasi Data
Dalam beberapa kasus, outlier dapat ditangani dengan transformasi tertentu agar distribusi data menjadi lebih sesuai untuk analisis atau pemodelan.
Namun, metode ini perlu disesuaikan dengan jenis data dan tujuan analisis. Tidak semua outlier harus ditransformasi.
Outlier dalam Dunia Nyata
Outlier tidak hanya ditemukan dalam dataset latihan. Dalam dunia nyata, data ekstrem dapat muncul dalam berbagai situasi.
Misalnya:
- Data transaksi dengan pembelian dalam jumlah sangat besar
- Data sensor yang tiba-tiba menunjukkan nilai ekstrem
- Data penggunaan server yang meningkat drastis
- Data waktu akses aplikasi yang jauh lebih lama
- Data penjualan yang melonjak pada periode tertentu
Menariknya, outlier dalam kasus seperti ini justru bisa menjadi sesuatu yang ingin kita cari.
Contohnya pada monitoring server, lonjakan penggunaan CPU yang jauh lebih tinggi dari kondisi normal dapat menjadi tanda bahwa ada aktivitas tertentu yang sedang terjadi. Artinya, data yang awalnya terlihat sebagai “data aneh” justru dapat memberikan informasi penting.
Jadi, Haruskah Semua Outlier Dihapus?
Jawabannya adalah tidak.
Outlier sebaiknya diperlakukan sebagai sesuatu yang perlu diperiksa. Kita perlu mencari tahu penyebabnya, melihat sumber datanya, dan mempertimbangkan tujuan analisis sebelum menentukan tindakan.
Jika outlier berasal dari kesalahan input, memperbaiki data mungkin menjadi pilihan yang tepat. Jika outlier merupakan kejadian nyata, menghapusnya justru dapat menghilangkan informasi penting dari dataset.
Karena itu, proses data cleaning membutuhkan lebih dari sekadar aturan otomatis. Kita juga perlu memahami konteks dari data yang sedang dianalisis.
Kesimpulan
Outlier adalah data yang memiliki nilai berbeda jauh dari pola umum dalam suatu dataset. Data seperti ini dapat muncul karena berbagai alasan, mulai dari kesalahan input hingga kejadian nyata yang memang jarang terjadi.
Untuk menemukan outlier, kita dapat menggunakan beberapa metode seperti IQR, Z-score, dan boxplot. Namun, menemukan outlier hanyalah langkah awal. Hal yang lebih penting adalah memahami mengapa data tersebut berbeda dan menentukan apakah data perlu diperbaiki, dipertahankan, atau ditangani dengan metode tertentu.
Pada akhirnya, data yang berbeda bukan berarti data yang salah. Dalam beberapa kasus, justru data yang terlihat paling berbeda dapat memberikan informasi yang paling menarik. Inilah alasan mengapa outlier menjadi salah satu hal penting yang perlu diperhatikan dalam proses Data Cleaning.
Dibuat oleh:
Mau Kuasai Mengenal Outlier: Data yang Berbeda dari Pola Umumnya Sampai Bisa Praktik Langsung?
Materi ini juga kami ajarkan langsung di kelas Edusoft Center, dibimbing mentor, sampai kamu bisa praktik nyata — bukan cuma baca teori.
Tanya Kursus via WhatsApp Lihat contoh project nyata dari siswa kami →
