Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengendalikan Outlier dalam Python - Kaedah IQR

Mengendalikan Outlier dalam Python - Kaedah IQR

Barbara Streisand
Barbara Streisandasal
2024-10-11 10:45:30515semak imbas

pengenalan

Sebelum mendedahkan sebarang cerapan daripada data dunia sebenar, adalah penting untuk meneliti data anda untuk memastikan data itu konsisten dan bebas daripada ralat. Walau bagaimanapun, Data boleh mengandungi ralat dan beberapa nilai mungkin kelihatan berbeza daripada nilai lain dan nilai ini dikenali sebagai outlier. Outlier memberi kesan negatif kepada analisis data yang membawa kepada cerapan yang salah yang membawa kepada pengambilan keputusan yang lemah oleh pemegang kepentingan. Oleh itu, menangani outlier adalah langkah kritikal dalam peringkat prapemprosesan data dalam sains data. Dalam artikel ini, kami akan menilai cara berbeza kami boleh menangani perkara luar.

Outliers

Outlier ialah titik data yang berbeza dengan ketara daripada kebanyakan titik data dalam set data. Ia adalah nilai yang berada di luar julat nilai yang dijangka atau biasa untuk pembolehubah tertentu. outlier berlaku kerana pelbagai sebab contohnya, ralat semasa kemasukan data, ralat pensampelan. Dalam pembelajaran mesin, outlier boleh menyebabkan model anda membuat ramalan yang salah sehingga menyebabkan ramalan yang tidak tepat.

Mengesan outlier dalam set data menggunakan buku nota Jupyter

  • Import perpustakaan python
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
plt.style.use('ggplot')
  • Muat fail csv anda menggunakan panda
df_house_price = pd.read_csv(r'C:\Users\Admin\Desktop\csv files\housePrice.csv')
  • Semak lima baris pertama set data harga rumah untuk melihat sekilas datafrane anda
df_house_price.head()

Handling Outliers in Python - IQR Method

  • Semak outlier dalam lajur harga dengan menggunakan plot kotak
sns.boxplot(df_house_price['Price'])
plt.title('Box plot showing outliers in prices')
plt.show()

Handling Outliers in Python - IQR Method

  • Daripada visualisasi plot kotak, lajur harga mempunyai nilai terpencil
  • Kini kita perlu mencari cara untuk mengendalikan nilai terpencil ini untuk memastikan membuat keputusan yang lebih baik dan memastikan model pembelajaran mesin membuat ramalan yang betul

Kaedah IQR mengendalikan nilai terpencil

  • Kaedah IQR bermaksud julat antara kuartil mengukur penyebaran separuh tengah data anda. Ia adalah julat untuk 50% tengah sampel anda.

Langkah-langkah untuk mengeluarkan outlier menggunakan julat antara kuartil

  • Hitung kuartil pertama (Q1) iaitu 25% daripada data dan kuartil ketiga (Q3) iaitu 75% daripada data.
Q1 = df_house_price['Price'].quantile(0.25)
Q3 = df_house_price['Price'].quantile(0.75)
  • kira julat antara kuartil
IQR = Q3 - Q1
  • Tentukan sempadan terpencil.
lower_bound = Q1 - 1.5 * IQR

Handling Outliers in Python - IQR Method

  • Sempadan bawah bermaksud mana-mana nilai di bawah -5454375000.0 ialah outlier
upper_bound = Q3 + 1.5 * IQR

Handling Outliers in Python - IQR Method

  • Sempadan atas bermaksud sebarang nilai di atas 12872625000.0 ialah outlier

  • Alih keluar nilai outlier dalam lajur harga

filt = (df_house_price['Price'] >= lower_bound) & (df_house_price['Price'] <= upper_bound)

df = df_house_price[filt]
df.head()

Handling Outliers in Python - IQR Method

  • Plot kotak Selepas mengeluarkan outlier
sns.boxplot(df['Price'])
plt.title('Box plot after removing outliers')
plt.show()

Handling Outliers in Python - IQR Method

Kaedah yang berbeza untuk mengendalikan nilai terpencil

  • Kaedah Z-Score
  • Penghadan Persentil (Memenangi)
  • Pemangkasan (Pemangkasan)
  • Imputasi
  • Kaedah Berasaskan Pengelompokan cth DBSCAN

Kesimpulan

Kaedah IQR adalah mudah dan teguh kepada outlier dan tidak bergantung kepada andaian kenormalan. Kelemahannya ialah ia hanya boleh mengendalikan data univariate dan ia boleh mengalih keluar titik data yang sah jika data itu condong atau mempunyai ekor yang berat.

Terima kasih
ikuti saya di pautan masuk dan di github untuk mendapatkan maklumat lanjut.

Atas ialah kandungan terperinci Mengendalikan Outlier dalam Python - Kaedah IQR. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn