An exploratory data analysis and machine-learning project for predicting residential property prices in Egypt. The repository contains a scraped dataset of 27,361 listings and a Jupyter notebook that cleans the data, explores the Egyptian housing market, engineers features, and compares regression models.
# Egypt House Price Prediction
An exploratory data analysis and machine-learning project for predicting residential property prices in Egypt. The repository contains a scraped dataset of **27,361 listings** and a Jupyter notebook that cleans the data, explores the Egyptian housing market, engineers features, and compares regression models.
## Repository contents
| File | Description |
| --- | --- |
| `Egypt_Houses_Price.csv` | Raw housing dataset with 27,361 rows and 12 columns |
| `egypt-houses-notebook.ipynb` | Data cleaning, visualization, feature engineering, training, and evaluation workflow |
## Dataset
Each row represents a property listing. The target variable is `Price`.
| Column | Description |
| --- | --- |
| `Type` | Property type, such as apartment, duplex, studio, or villa |
| `Price` | Listed property price in Egyptian pounds (EGP) |
| `Bedrooms` | Number of bedrooms |
| `Bathrooms` | Number of bathrooms |
| `Area` | Property area in square metres |
| `Furnished` | Furnishing status |
| `Level` | Floor level |
| `Compound` | Compound name, when available |
| `Payment_Option` | Accepted payment method |
| `Delivery_Date` | Expected delivery date or readiness status |
| `Delivery_Term` | Finishing/delivery condition |
| `City` | Property location |
The raw data uses `Unknown` for some missing values. The notebook replaces or removes these values as part of preprocessing.
## Workflow
The notebook covers:
1. Loading and inspecting the raw listings.
2. Handling missing values and duplicate rows.
3. Converting numeric columns to suitable data types.
4. Normalizing property types and floor levels.
5. Removing sparse locations, invalid records, and city-level price outliers.
6. Exploring price patterns by location, area, property type, and furnishing status.
7. One-hot encoding categorical features and splitting the data into training and test sets.
8. Training and evaluating linear regression, decision tree, and random forest models.
## Saved mode …