https://github.com/ganesh2409/salary_prediction
Forging a cutting-edge Salary Prediction Software for Software Engineers. Seamlessly blending the art of data science and the precision of machine learning.
https://github.com/ganesh2409/salary_prediction
machne-learning python salary-prediction streamlit
Last synced: 3 months ago
JSON representation
Forging a cutting-edge Salary Prediction Software for Software Engineers. Seamlessly blending the art of data science and the precision of machine learning.
- Host: GitHub
- URL: https://github.com/ganesh2409/salary_prediction
- Owner: Ganesh2409
- Created: 2023-12-15T15:42:44.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-18T08:47:52.000Z (over 1 year ago)
- Last Synced: 2025-02-28T11:51:31.924Z (over 1 year ago)
- Topics: machne-learning, python, salary-prediction, streamlit
- Language: Jupyter Notebook
- Homepage: https://lets-predict-salary.streamlit.app/
- Size: 43.9 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Software Developer Salary Predictor
## Overview
This project is a web application that predicts the salary of software developers based on their country, education level, and years of experience. The application uses a Random Forest model trained on data from the Stack Overflow Developer Survey 2023.
## Project Structure
- `app.py`: The main entry point of the application, where users can choose to explore data or predict salaries.
- `predict_page.py`: Contains the functionality to gather user input and predict salaries.
- `explore_page.py`: Provides an interactive exploration of the salary data.
- `Salary_prediction.ipynb`: A Jupyter Notebook used for data analysis, feature engineering, and model training.
- `Salary_Prediction/models/`: Directory where the trained model and encoders are saved.
## Features
- **Salary Prediction**: Predicts the salary of a software developer based on their country, education level, and years of experience.
- **Data Exploration**: Visualizes salary data by country and experience level, using charts like bar charts, line charts, and pie charts.
## Getting Started
### Prerequisites
- Python 3.8 or higher
- Required Python libraries listed in `requirements.txt`
### Installation
1. Clone the repository:
```bash
git clone https://github.com/Ganesh2409/Salary_Prediction.git
cd Salary_Prediction
```
2. Install the required packages:
```bash
pip install -r requirements.txt
```
3. Run the application:
```bash
streamlit run app.py
```
## Usage
1. **Predict Salary**: Navigate to the "Predict" page, select your country, education level, and years of experience, then click "Calculate Salary". The application will display the predicted salary.
2. **Explore Data**: On the "Explore" page, you can visualize salary distributions by country and experience.
## Model Information
- **Data**: The model is trained on data from the Stack Overflow Developer Survey 2023.
- **Algorithms**: The application uses a Random Forest Regressor to predict salaries.
- **Preprocessing**:
- Label Encoding: For the country column.
- Ordinal Encoding: For the education level column.
## Model Improvement:
- **Try Different Algorithms**: Experiment with other machine learning models like Gradient Boosting, XGBoost, or Neural Networks to see if they offer better performance than Random Forest.
- **Hyperparameter Tuning**: Perform more advanced hyperparameter tuning using techniques like Bayesian optimization or Genetic Algorithms to further improve the model's accuracy.
## Contributing
Contributions are welcome! Please fork this repository and submit a pull request with your changes.
## Contact
For any questions or feedback, please contact:
- **Name** - [Ganesh Chowdhary P]()
- **Email** - [pinnamaneniganesh24@gmail.com ](mailto:your.pinnamaneniganesh24@gmail.com)
```bash
Made with ❤️ ( ͡• ͜ʖ ͡• ) Follow for more ... :)
```