A practical, beginner-friendly, and portfolio-ready project that demonstrates how to identify, visualize, analyze, and remove outliers using real datasets and Python.
Raw data is rarely perfect. Real-world datasets often contain outliers — values that are unusually high or low compared to the rest of the data. If not handled properly, they can distort averages, reduce model accuracy, and lead to poor decisions.
This repository focuses on solving that problem using hands-on notebooks, datasets, and clear statistical methods.
Whether you're a beginner in data science or building your GitHub portfolio, this project gives you practical exposure to one of the most important preprocessing steps in analytics and machine learning.
- What outliers are and why they matter n- How to detect outliers visually and statistically
- How to use Percentile, IQR, and Z-Score methods
- How to clean and filter noisy datasets
- How outlier removal improves data quality
- How to use Pandas, NumPy, and Matplotlib in real workflows
- How to structure data analysis projects professionally
- Python
- Pandas – data manipulation
- NumPy – numerical operations
- Matplotlib – charts & visualization
- Jupyter Notebook – interactive analysis
- Statistics – Z-Score, Percentiles, IQR
Outlier_Detection/
│── AB_NYC_2019.csv # Airbnb NYC dataset
│── Housing.csv # Housing dataset
│── bhp.csv # Bengaluru house price dataset
│── name_height_outlier.csv # Simple demo dataset with outlier
│── weight-height.csv # Height & weight dataset
│── air_bnb_new_york_city.ipynb # Airbnb outlier analysis
│── bhp_OutliersRemove.ipynb # Housing price cleaning project
│── outlier_detection_using_percentilr.ipynb
│── Using_Z_Score.ipynbUseful when removing extreme top/bottom values based on distribution.
Example:
- Remove top 1% expensive houses
- Filter lowest 1% suspicious values
✅ Great for skewed datasets.
Uses quartiles to detect values far outside the normal spread.
Formula:
Lower Bound = Q1 - 1.5 × IQR
Upper Bound = Q3 + 1.5 × IQR
✅ Commonly used in boxplot analysis.
Measures how many standard deviations a value is from the mean.
Rule of Thumb:
- |Z| > 3 → Potential Outlier
✅ Excellent for normally distributed data.
✔ Uses multiple real-world datasets ✔ Covers both beginner and intermediate techniques ✔ Includes practical notebooks, not just theory ✔ Great addition to a Data Science portfolio ✔ Easy to understand and extend further ✔ Shows strong data preprocessing knowledge
git clone https://github.com/your-username/outlier-detection.git
cd outlier-detectionpip install pandas numpy matplotlib jupyterjupyter notebookRun any notebook and explore the analysis step by step.
- Machine Learning preprocessing
- Cleaning housing price datasets
- Detecting anomalies in business data
- Removing sensor errors
- Preparing datasets for model training
- Statistical analysis projects
Outlier detection is not just about deleting rows — it’s about understanding your data, identifying noise, and making smarter decisions.
This project demonstrates exactly how professionals approach that process.
Contributions, improvements, and new datasets are welcome.
- Fork the repo
- Create a new branch
- Make changes
- Submit a pull request
If you found this project helpful:
- Star the repository ⭐
- Share it with others 🔁
- Use it in your learning journey 📚
If you're building data science projects, feel free to showcase this repo in your portfolio and keep learning.
Clean data creates better models. 🚀