Use the IQR method: compute Q1 and Q3, calculate IQR = Q3 − Q1, flag values < Q1 − 1.5×IQR or > Q3 + 1.5×IQR
Use the z-score method: compute mean and standard deviation, flag values with |z| > 3 (or another chosen threshold)
Use the modified z-score method (robust): compute median and MAD, calculate 0.6745×(x − median)/MAD, flag values with |modified z| > 3.5
Use the percentile/IQR rule: flag values below the 1st percentile or above the 99th percentile (or other chosen cutoffs)
Use the boxplot: identify points plotted beyond whiskers (typically 1.5×IQR)
Use scatter plots: look for points far from the general cloud or far from the trend line
Use time-series plots: flag sudden spikes/drops relative to the recent pattern
Use DBSCAN for density-based outliers: mark points with low neighborhood density as outliers
Use Isolation Forest: fit the model and flag points with low anomaly scores
Use One-Class SVM: train on “normal” data and flag points outside the learned boundary
Use Mahalanobis distance (multivariate): compute distances from the mean using the covariance matrix, flag distances above a chosen chi-square threshold
Validate with domain rules: confirm whether flagged points are data entry errors, measurement artifacts, or true anomalies
Re-check after transformations: apply log/Box-Cox/standardization when appropriate and re-run outlier detection
Handle outliers: remove only if confirmed erroneous, otherwise consider capping/winsorizing, robust models, or separate anomaly workflows
