Logo Lanfrica

AshKank24/Census-Analysis-and-Prediction

Domain:

socioeconomic
Creator:
Ash
Host:
In this repository I have performed Exploratory Data Analysis on the Census data of China and Kenya. Predicted future population growth using LSTM. # Census Analysis and Prediction This repository contains a project for analyzing and predicting population trends using Long Short-Term Memory (LSTM) neural networks. The project focuses on population data from China and Kenya. ## Project Overview The goal of this project is to analyze historical population data and build an LSTM model to forecast future population trends. The project includes the following steps: 1. Data preprocessing 2. Creating sequences for LSTM 3. Building and training the LSTM model 4. Evaluating the model 5. Visualizing the results 6. Analyzing the trends and patterns ## Dependencies - Python 3.x - NumPy - Pandas - Matplotlib - Scikit-learn - TensorFlow - Keras ## Installation 1. Clone the repository: ```bash git clone github.com cd Census-Analysis-and-Prediction ``` 2. Install the required packages: ```bash pip install -r requirements.txt ``` ## Data The dataset includes historical population data for China and Kenya. Ensure your data is saved as `china.csv` and `kenya.csv` in the root directory of this project. ## Usage 1. Prepare your data and save it as `china.csv` and `kenya.csv`. 2. Run the script to preprocess the data, build the model, and visualize the results: ```bash python population_forecasting.py ``` ## Analysis ### Data Overview The dataset includes the following columns: - `Year`: The year of the data record. - `Population`: Total population. - `Urban Population`: Urban population. - `Rural Population`: Rural population. - `Male Population`: Male population. - `Female Population`: Female population. - `Birth Rate`: Birth rate per 1000 people. - `Death Rate`: Death rate per 1000 people. - `Life Expectancy`: Life expectancy in years. ### Data Preprocessing - Normalization: The population data is normalized to a range between 0 and 1 using Min-Max scaling. - Splitting: The dataset is split into training and testing sets with an 80-20 ratio. - Sequence Creati …