Project Domain: Real Estate Analytics
This repository contains the dataset, code, and web application for predicting property listed prices and rental values in the United States using machine learning algorithms.
This project aims to develop a web application that predicts property prices and rental values based on various features using machine learning. The application leverages multiple algorithms to analyze key property characteristics such as the number of bedrooms, bathrooms, total area, price per sq.ft, and location to provide accurate estimates for both sale and rental prices.
Dataset: The dataset used in this project is "United States House Listings: Zillow Extract 2023" from Kaggle, containing a diverse snapshot of housing characteristics across various U.S. states, cities, and neighbourhoods. URL: https://www.kaggle.com/datasets/febinphilips/us-house-listings-2023
The following machine-learning algorithms are employed in this project:
- Linear Regression
- Random Forest
- Gradient Boosting
- XGBoost
- CatBoost
- LightGBM
data/
: Contains the cleaned datasetstatic/
: Includes CSS and JavaScript files for web application functionality along with image filestemplates/
: Contains HTML file for the web application’s user interfaceCode_EDA.ipynb
: Script for exploratory data analysis (EDA)Code_Predicting.ipynb
: Script for machine learning modeling and predictionsapp.ipynb
: Flask integration script for backend operationsfinal_model_listed.pkl
: Trained model for predicting listed pricesfinal_model_rent.pkl
: Trained model for predicting rental pricesscaler_listed.pkl
: Scaler used for normalizing listed price datascaler_rent.pkl
: Scaler used for normalizing rental price dataREADME.md
: This file
To access and run the web application on your device, please follow these steps:
- Clone the repository using the following command in your terminal:
git clone <repository_url>
- Alternatively, download the repository as a ZIP file and extract it to your desired location.
- Navigate to the repository folder and open the
app.ipynb
file using Jupyter Notebook.
If not already installed, you need to install the following Python libraries:
- Flask: Run
pip install Flask
- Joblib: Run
pip install joblib
You can install them directly from the Jupyter Notebook or through your terminal.
- In the
app.ipynb
notebook, locate and run the main code block that initializes the Flask application. - Upon execution, you will receive an HTTP link in the output.
- Click on the HTTP link provided in the notebook output.
- This link will open the web application in your web browser.
- You can now interact with the application and test its features.