Mengesan dan Mengecualikan Outlier dalam Pandas DataFrames Menggunakan Z-Scores
Mengenal pasti dan mengalih keluar outlier daripada panda DataFrame adalah penting untuk memastikan ketepatan dan kebolehpercayaan analisis data. Untuk mencapai matlamat ini, pendekatan biasa ialah menggunakan skor-Z, yang mengukur bilangan sisihan piawai titik data adalah daripada min.
Melaksanakan pendekatan ini memerlukan penggunaan fungsi scipy.stats.zscore, yang mengira skor-Z untuk tatasusunan data yang diberikan. Dengan menggunakan skor Z pada setiap lajur dalam DataFrame, adalah mungkin untuk menentukan baris mana yang mengandungi nilai yang jauh berbeza daripada min.
Sebagai contoh, untuk mengecualikan semua baris dengan lajur tertentu, seperti " Vol," mengandungi outlier, ungkapan berikut boleh digunakan:
df[(np.abs(stats.zscore(df["Vol"])) < 3).all(axis=1)]
Ungkapan ini mengira skor Z mutlak untuk setiap nilai dalam lajur "Jilid". Nilai mutlak digunakan untuk mengabaikan arah sisihan daripada min. Hasilnya ialah topeng boolean dengan True menunjukkan baris tanpa outlier. Menggunakan topeng ini untuk mengindeks DataFrame secara berkesan mengecualikan baris dengan nilai "Vol" yang melampau.
Jika berbilang lajur perlu dipertimbangkan, sintaks boleh diubah suai untuk memeriksa baris dengan outlier dalam mana-mana lajur:
df[(np.abs(stats.zscore(df)) < 3).all(axis=1)]
Dalam kes ini, (np.abs(stats.zscore(df)) < 3) mengira skor Z untuk semua lajur dan menggunakan 3 ambang sisihan piawai. Keadaan semua(paksi=1) memilih baris yang memenuhi kriteria untuk semua lajur.
Dengan menggunakan skor Z dan ungkapan yang disediakan, ia menjadi mudah untuk menapis titik data terpencil, memastikan set data yang bersih dan boleh dipercayai untuk analisis lanjut.
Atas ialah kandungan terperinci Bagaimanakah Z-Scores Boleh Membantu Mengenalpasti dan Mengalih keluar Outlier daripada Pandas DataFrames?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!