This project uses Machine Learning algorithms to classify Iris flowers into three species:
- Iris-setosa
- Iris-versicolor
- Iris-virginica
The project includes data preprocessing, exploratory data analysis (EDA), visualization, model training, model comparison, and feature importance analysis.
Dataset: Iris Flower Dataset Source : https://www.kaggle.com/datasets/saurabh00007/iriscsv Features:
- Sepal Length (cm)
- Sepal Width (cm)
- Petal Length (cm)
- Petal Width (cm)
Target Variable:
- Species
Total Records: 150
Number of Classes: 3
- Python
- Jupyter Notebook
- NumPy
- Pandas
- Matplotlib
- Seaborn
- Scikit-Learn
- XGBoost
- Logistic Regression
- K-Nearest Neighbors (KNN)
- Decision Tree
- Random Forest
- Support Vector Machine (SVM)
- XGBoost
- Data Loading
- Data Exploration
- Data Visualization
- Data Preprocessing
- Feature Scaling
- Train-Test Split
- Model Training
- Model Evaluation
- Model Comparison
- Feature Importance Analysis
All machine learning models achieved excellent performance on the Iris dataset.
The dataset is well-structured and highly separable, allowing multiple algorithms to classify the flower species with very high accuracy.
Feature Importance Analysis identified:
- Petal Length
- Petal Width
as the most influential features for classification.
- Species Distribution
- Pair Plot
- Correlation Heatmap
- Model Accuracy Comparison
- Confusion Matrix
- Feature Importance
Iris_classification/
├── Data/
│ └── Iris.csv
├── images/
│ ├── species_distribution.png
│ ├── pairplot.png
│ ├── heatmap.png
│ ├── model_comparison.png
│ ├── confusion_matrix.png
│ └── feature_importance.png
├── Iris_classification.ipynb
├── requirements.txt
├── .gitignore
└── README.md
Clone the repository:
git clone
Install dependencies:
pip install -r requirements.txt
Run Jupyter Notebook:
jupyter notebook
Open:
Iris_classification.ipynb
and execute all cells.
Rawal JayKumar NarendraKumar
Data Science & Business Intelligence Learner
CodeAlpha Internship Project