PROJECT RAINFALL is a Python-based academic data analysis project that processes long-term daily rainfall datasets, visualizes temporal patterns, and forecasts future rainfall using linear regression techniques.
This project analyzes daily rainfall data collected over multiple decades (2001–2024) to identify long-term trends and seasonal patterns. Using statistical aggregation and visualization techniques, yearly and monthly rainfall characteristics are explored. A linear regression model is applied to forecast future rainfall trends, making the project suitable for introductory climate data analysis and applied machine learning studies.
The program supports both CSV and Excel formats.
Example datasets:
Srimangal_Daily_Rainfall_CHIRPS_2001_2024.csvMymensingh_Daily_Rainfall_CHIRPS_2001_2024.xlsx
The script automatically detects columns, but datasets should include:
- Date (daily resolution)
- Rainfall / Precipitation values (in millimeters)
- Automatic CSV / Excel file loading
- Intelligent column auto-detection
- Data cleaning & preprocessing
- Yearly total rainfall computation
- Monthly average rainfall analysis
- Trend line visualization
- Identification of extreme rainfall years
- Future rainfall prediction using Linear Regression
- Option to save generated graphs
- Yearly Total Rainfall with Trend Line
- Average Monthly Rainfall Pattern
- Future Rainfall Forecast Plot
All images can be saved automatically in:
imageFolder/
- Model: Linear Regression
- Library:
scikit-learn - Training data: Yearly total rainfall
- Output: User-defined future year predictions
⚠️ Note: The forecast is statistical and does not incorporate complex climate variables.
git clone https://github.com/itzRatul/project-rainfall.git
cd project-rainfallpip install numpy pandas matplotlib scikit-learn openpyxlpython rainfall_project.py1) Show dataset information
2) Plot yearly total rainfall with trend line
3) Plot average monthly rainfall pattern
4) Display highest & lowest rainfall years
5) Predict future rainfall with visualization
6) Exit
project-rainfall/
│
├── rainfall_project.py
├── Srimangal_Daily_Rainfall_CHIRPS_2001_2024.csv
├── Mymensingh_Daily_Rainfall_CHIRPS_2001_2024.xlsx
├── imageFolder/
│ ├── yearly_with_trend.png
│ ├── monthly_pattern.png
│ └── forecast_5_years.png
└── README.md
- Python
- NumPy
- Pandas
- Matplotlib
- Scikit-learn
- University data analysis projects
- Climate trend exploration
- Introductory machine learning practice
- Research-oriented Python programming
- Seasonal (monsoon-based) analysis
- Advanced forecasting models (ARIMA, LSTM)
- Multi-location comparative studies
- Interactive dashboard using Streamlit
Md. Ratul Hossen
BSc in Computer Science & Engineering
Daffodil International University
⭐ If you find this project useful, please give it a star on GitHub.