Kesan dan Kecualikan Outlier dalam Bingkai Data Pandas Menggunakan Sisihan Piawai
Outlier ialah titik data yang menyimpang dengan ketara daripada seluruh data dalam pengedaran. Mengenal pasti dan mengecualikan outlier boleh meningkatkan analisis data dengan mengalih keluar pemerhatian berat sebelah atau bising. Pandas menyediakan beberapa kaedah untuk mengendalikan penyimpangan, termasuk menggunakan sisihan piawai.
Untuk mengecualikan baris dengan nilai melebihi bilangan sisihan piawai tertentu daripada min, kita boleh menggunakan fungsi scipy.stats.zscore. Fungsi ini mengira skor Z untuk setiap titik data, mewakili bilangan sisihan piawai yang jauh dari min.
import pandas as pd import numpy as np from scipy import stats # Create a sample dataframe df = pd.DataFrame({'Vol': [1200, 1230, 1250, 1210, 4000]}) # Calculate Z-score for the 'Vol' column zscores = stats.zscore(df['Vol']) # Exclude rows with Z-score greater than 3 filtered_df = df[np.abs(zscores) < 3]
Pendekatan ini mengesan dan mengecualikan outlier dalam lajur 'Vol' secara khusus. Untuk lebih fleksibiliti, kami boleh menggunakan penapis ini pada berbilang lajur secara serentak:
# Calculate Z-scores for all columns zscores = stats.zscore(df) # Exclude rows with any column Z-score greater than 3 filtered_df = df[(np.abs(zscores) < 3).all(axis=1)]
Dengan melaraskan nilai ambang (3 dalam kes ini), kami boleh mengawal tahap pengecualian terpencil. Ambang yang lebih kecil akan menghasilkan pengesanan outlier yang lebih konservatif, manakala ambang yang lebih besar akan mengecualikan lebih banyak outlier yang berpotensi.
Menggunakan pendekatan ini, kami boleh mengenal pasti dan mengalih keluar outlier dengan berkesan yang mungkin memesongkan analisis Pandas DataFrame kami.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesan dan Mengecualikan Outlier dalam Pandas DataFrame Menggunakan Sisihan Piawai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!