{"id":25299926,"url":"https://github.com/jpedrou/rain-prediction","last_synced_at":"2026-05-02T03:31:33.033Z","repository":{"id":250614183,"uuid":"834293052","full_name":"jpedrou/rain-prediction","owner":"jpedrou","description":"Application made with the aim of predict when it will rain today or tomorrow in Australia using Machine Learning and a queue system.","archived":false,"fork":false,"pushed_at":"2024-07-29T21:40:59.000Z","size":53115,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-06T23:39:09.770Z","etag":null,"topics":["airflow","data-science","data-visualization","machine-learning","preprocessing","python","sqlite3","streamlit"],"latest_commit_sha":null,"homepage":"https://rainprediction.streamlit.app/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jpedrou.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-07-26T21:38:27.000Z","updated_at":"2024-08-24T21:36:12.000Z","dependencies_parsed_at":"2024-07-28T21:34:14.109Z","dependency_job_id":null,"html_url":"https://github.com/jpedrou/rain-prediction","commit_stats":null,"previous_names":["jpedrou/rain-prediction"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jpedrou/rain-prediction","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpedrou%2Frain-prediction","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpedrou%2Frain-prediction/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpedrou%2Frain-prediction/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpedrou%2Frain-prediction/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jpedrou","download_url":"https://codeload.github.com/jpedrou/rain-prediction/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpedrou%2Frain-prediction/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32522245,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-02T01:12:54.858Z","status":"online","status_checked_at":"2026-05-02T02:00:05.923Z","response_time":132,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["airflow","data-science","data-visualization","machine-learning","preprocessing","python","sqlite3","streamlit"],"created_at":"2025-02-13T05:35:39.940Z","updated_at":"2026-05-02T03:31:33.011Z","avatar_url":"https://github.com/jpedrou.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\u003cimg width=\"150\" src=\"images/kangaroo.png\"/\u003e\u003c/p\u003e\n\u003ch1 align=\"center\"\u003eRain Prediction in Australia\u003c/h1\u003e\n\n**Objective**\n\nDevelop a system that predicts if it will rain today and tomorrow in Australia using machine learning. Additionally, implement an user interface and a queue system using Apache Airflow to continuously update the model whenever the dataset changes.\n\n**Technologies** \n\nPython|Streamlit|Airflow|SQLite\n---|----|----|----|\n\u003cimg width=\"40\" src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" /\u003e|\u003cimg width=\"40\" src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/streamlit/streamlit-original.svg\" /\u003e|\u003cimg width=\"40\" src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/apacheairflow/apacheairflow-original.svg\" /\u003e|\u003cimg width=\"40\" src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/sqlite/sqlite-original.svg\" /\u003e\n\n## Project Components\n\n1. **Data Collection and Preparation**\n    - Use the weather dataset provided by Kaggle: [Rain in Australia](https://www.kaggle.com/datasets/jsphyg/weather-dataset-rattle-package).\n    - Perform Exploratory Data Analysis (EDA).\n    - Preprocess the data to handle missing values, encode categorical variables and more.\n\n2. **Modeling**\n    - Select appropriate machine learning algorithm.\n    - Train and validate the models using historical weather data to find the best performing model.\n\n3. **Prediction System**\n    - Develop a Python application that takes daily weather features as input and predicts whether it will rain today and tomorrow.\n    - Implement the prediction logic using the trained machine learning model.\n\n\n4. **Queue System with Apache Airflow**\n    - Set up Apache Airflow to automate the workflow of updating the model.\n    - Create DAGs (Directed Acyclic Graphs) in Airflow to define tasks such as data ingestion, preprocessing, model training, and deployment.\n    - Schedule the DAGs to run at regular intervals or when new data is available.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjpedrou%2Frain-prediction","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjpedrou%2Frain-prediction","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjpedrou%2Frain-prediction/lists"}