Three-Project Series

End-to-End Machine Learning for Rain Prediction you own this product

basic Python • basic pandas, Numpy, Matplotlib, seaborn, and scikit-learn • basic Jupyter Notebook • basic machine learning • basic exploratory analysis • basic Joblib/Pickle • basic Flask, Heroku, pipenv/virtualenv
skills learned
manipulate data and conduct exploratory analysis • input missing values • engineer outliers • evaluate predictions and accuracy • visualize patterns with classes • conduct hyperparameter tuning • prepare a model for production deployment • create virtual environments • GET and POST requests • create a web framework for a prediction app • deploy an app remotely on Heroku
Harshit Tyagi
3 weeks · 3-5 hours per week average · INTERMEDIATE

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!


5, 10 or 20 seats+ for your team - learn more

In this multi-part liveProject series, you’ll harness the power of machine learning to make predictions about future rainfall. The Weather Department of Australia is having trouble handling meteorological data manually, and your challenge is to build an end-to-end machine learning model that can make on-the-fly predictions. You’ll use common Python data tools to clean and classify your dataset for analysis, train and evaluate your model, and then deploy your model to a remote server using Flask and Heroku. Work from beginning to end, or dive into whichever section will best augment your skills.

These projects are designed for learning purposes and are not complete, production-ready applications or solutions.

here's what's included

Project 1 Train a Binary Classifier
In this liveProject, you’ll explore a pre-made dataset of meteorological records. You’ll learn the shape, size and type of data at hand, and discover factors that affect rainfall. You use scikit-learn and logistics regression to make initial predictions about future rainfall, evaluate their accuracy, and visualize emerging patterns using Seaborn and Matplotlib.
Project 2 Evaluate a Binary Classifier
Judging the effectiveness of a machine learning model requires in-depth analysis. This quick liveProject builds on the work you have completed in Machine Learning for Classification. You’ll assess your early models and consider better alternatives. You’ll plot the ROC curves of the model and compare it to multiple dummy models, and tune your hyperparameters to deliver the most accurate results possible.
Project 3 Deploy a Predictive Model

In this liveProject, you’ll deploy a machine learning model to production so it can be easily used by colleagues. You’ll create a virtual environment for deploying your application, use Flask to build a local web service that returns predictions, and Heroku for remote deployment.

book and video resources

When you start each of the projects in this series, you'll get full access to the following book and video for 90 days.

choose your plan


only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • End-to-End Machine Learning for Rain Prediction project for free

project author

Harshit Tyagi
Harshit Tyagi has helped over a thousand students master the fundamentals of programming and data science. In his roles at OpenClassrooms and Coding Ninjas, he leverages his technical expertise to conduct workshops and help students bring their course projects to the finish line. He also has a YouTube channel, where he covers fundamental concepts in data science and Python, interview tips, and more. In addition to focusing on data science education, Harshit has developed data processing algorithms with research scientists at Yale, MIT and UCLA.


This liveProject is for Python data scientists who want to expand their capabilities in preparing data for machine learning. To begin this liveProject you will need to be familiar with the following:

  • Basic Python
  • Basic pandas
  • Basic NumPy
  • Basic Matplotlib
  • Basic seaborn
  • Basic scikit-learn
  • Basic Jupyter Notebook
  • Basics of machine learning
  • Basics of exploratory analysis

Note: The final milestone of Project 3 Deploy a Predictive Model uses Heroku to deploy the completed application. Heroko incurs a cost. There is intermittent use, and the Eco option ($5) will be sufficient to get the app working as Eco covers 1000 hours, and we will be using far less than that for this project.

you will learn

In this liveProject, you’ll learn skills for cleaning and exploring data in preparation for training a machine learning model.

  • Manipulating data and exploratory analysis
  • Imputing missing values, engineering outliers, and one-hot encoding
  • Evaluating predictions, accuracy, and other metrics
  • Visualizing patterns with correlation pair plots and heatmaps


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.