Pengesanan Outlier dan Pengecualian dalam Pandas DataFrames
Apabila bekerja dengan set data, adalah penting untuk mengenal pasti dan mengendalikan outlier, kerana ia boleh memesongkan analisis dan keputusan. Dalam panda, mengesan dan mengecualikan outlier berdasarkan nilai lajur tertentu boleh dicapai menggunakan pendekatan yang elegan dan cekap.
Memahami Masalah
Diberikan panda DataFrame dengan beberapa lajur , baris tertentu mungkin mengandungi nilai terpencil dalam lajur tertentu, dilambangkan sebagai "Jilid." Tugasnya adalah untuk menapis DataFrame dan mengecualikan baris di mana nilai lajur "Vol" menyimpang dengan ketara daripada min.
Penyelesaian Menggunakan scipy.stats.zscore
Untuk mencapai ini, kita boleh memanfaatkan scipy.stats.zscore fungsi:
import pandas as pd import numpy as np from scipy import stats # Calculate Z-scores for the specified column z_scores = stats.zscore(df['Vol']) # Define a threshold for outlier detection (e.g., 3 standard deviations) threshold = 3 # Create a mask to identify rows with outlier values mask = np.abs(z_scores) < threshold # Filter the DataFrame using the mask outlier_filtered_df = df[mask]
Penyelesaian ini menyediakan kaedah yang berkesan untuk mengesan dan mengecualikan outlier berdasarkan nilai lajur yang ditentukan. Dengan menggunakan skor-Z, kita boleh mengukur sisihan nilai individu daripada min dan menggunakan ambang untuk mengenal pasti penyimpangan. Outlier_filtered_df yang terhasil akan mengandungi hanya baris dengan nilai "Vol" dalam julat yang ditentukan.
Atas ialah kandungan terperinci Bagaimana Berkesan Mengesan dan Mengecualikan Outlier dalam Pandas DataFrames Menggunakan Z-skor?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!