# Jovian Data Science and Machine Learning Bootcamp

59
21

The Jovian Data Science and Machine Learning Bootcamp is a 24-week program designed to help you learn industry-standard tools & techniques for data science, build real-world projects, and start your data science career. The following topics are covered:

1. Programming with Python
3. Statistics for Data Science
4. Data Analysis & Visualization
5. Supervised Machine Learning

Start working through the lessons, assignments, and projects below and try to complete them before the given deadlines to stay on track with other participants in your batch.

### Bootcamp Introduction and OverviewPreview

• Curriculum and schedule walkthrough
• How to get help on Slack and Zoom
• How to succeed and stay on track

### 1.1 Python Programming FundamentalsPreview

• Introduction to Python & Jupyter notebooks
• Arithmetic, conditional & logical operators
• Variables and common data types in Python

### 1.2 Next Steps with PythonPreview

• Branching with if, elif and else
• Iteration with while and for loops
• Functions, scope, and exceptions

### Assignment 0 - Python Basics PracticePreview

• Solve word problems with arithmetic operations
• Manipulate data types with methods & operators
• Use branching and iteration to analyze data

### Assignment 1 - Sudoku Solver in Python

• Reading Sudoku puzzles from a file
• Performing validations using functions
• Recursive solution with backtracking

### 2.1 Introduction to Probability

• Coin tosses, dice rolls and playing cards
• Intersection, union and independence
• Conditional probability and Bayes theorem

### 2.2 Measures of Central Tendency

• Mean, standard deviation & variance
• Median, percentiles, quartiles & range
• Mode of a dataset & frequency tables

### Assignment 6 - Statistics & Probability Practice

• Simple and compound probability
• Mean and standard deviation
• Median, quartiles, and mode

### 1.3 Web Scraping and REST APIs

• Reading from and writing to CSVs
• Extracting information from HTML

### 2.3 Counting Techniques and Random Variables

• Factorials, permutations & combinations
• Discrete and continuous random variables
• Probability distributions and expected values

### Project 1 - Web Scraping with Python

• Select a website for scraping
• Scrape and parse data from site
• Write the results to CSV files

### 1.4 Local Development with Conda & Git

• Local development environment setup
• Running Python scripts & notebooks
• Managing large Python projects with Git

### 2.4 Hypothesis Testing and Statistical Significance

• Stating null and alternate hypotheses
• Computing Z scores and p values
• Significance and confidence levels

### Assignment 3 - Evaluating A/B Tests

• Introduction to A/B tests
• Computing the p-value
• Picking a winning variant

### Python Programming Course Review

• Review of course topics
• Discussion of project ideas

### 1.6 Documentation and Storytelling

• Improving clarity and readability of code
• Documenting notebooks using Markdown
• Storytelling techniques for improving projects

### Workshop - How to Write a Data Science Blog Postoptional

• Why writing blog posts is important
• Crafting a great blog post step by step
• Publishing and sharing your blog posts

### Workshop - Web Scraping with Selenium & AWSoptional

• Building Python projects with GitHub & Replit
• Scraping dynamic websites using Selenium
• Deploying to AWS and sending results via email

### 3.1 Numerical Computing with Numpy

• Arrays, vectors, and matrices in Numpy
• Array operations, slicing, and broadcasting
• Reading from and writing to CSV files

### Assignment 4 - Exploring Numpy Functions

• Explore the Numpy documentation website
• Demonstrate usage 5 numpy array operations
• Publish a Jupyter notebook with explanations

### 3.2 Analyzing Tabular Data with Pandas

• Querying, filtering, and sorting data frames
• Grouping and aggregation for data summarization
• Merging and joining data from multiple sources

### 4.1 Visualization with Matplotlib and Seaborn

• Basic visualizations with Matplotlib
• Tips for customizing and styling charts

### Assignment 5 - Pandas Data Analysis Practice

• Query and sort data from data frames
• Group, merge, and aggregate data frames
• Fix missing and invalid values in data

### 3.3 Advanced Data Analysis Techniques

• Categorical data and datatype-specific methods
• Dataframe concatenation, merging, and joins

### 4.2 Interactive Visualization with Plotly & Folium

• Creating interactive graphs with Plotly
• Markers, 3D charts, and animation
• Plotting on maps using Folium

### Assignment 6 - Data Analysis & Visualization Practice

• Querying and filtering pandas data frames
• Static charts with Matplotlib & Seaborn
• Interactive charts with Plotly & Folium

### 4.3 Exploratory Data Analysis Case Study

• Data preparation and cleaning with Pandas
• Open-ended exploratory analysis & visualization

### Data Analysis Course Review

• Review of course topics
• Discussion of project ideas

### Project 2 - Exploratory Data Analysis

• Find a large real-world dataset using online sources
• Clean, process & analyze dataset using Pandas

### Object Oriented Programming with Python

• Classes, objects, and inheritance
• Class properties and methods
• Exploring library source code

### Data Visualization Course Review

• Review of course topics
• Discussion of project ideas

### Workshop - How to Present Your Data Science Projectsoptional

• Understanding the audience for your presentation
• Crafting an impressive slide deck for your project
• Tips for practice, delivery, and audience engagement

### 5.1 Linear Regression with Scikit-Learn

• Linear regression with multiple features
• Using numeric and categorical features
• Regression coefficients & features importance

### 6.1 Relational Databases and SQL

• Setting up MySQL and creating tables
• Inserting and querying data with SQL
• Keys, references, and aggregations

### 5.2 Logistic Regression for Classification

• Training a Scikit-learn logistic regression model
• Model evaluation, prediction, and persistence

### Assignment 7 - Train Your First ML Model

• Train a linear regression model using sklearn
• Make predictions and evaluate the model

### 6.2 Aggregation and Joins with SQL

• Aggregation functions and grouping
• Combining data with SQL joins
• Improving performance with indexes

### Assignment 8 - SQL Querying Practice

• Selection, filtering, and ordering
• Functions, aggregations, and joins
• Adding new tables and records

### 5.3 Decision Trees and Random Forests

• Traning decision trees & random forests
• Overfitting and hyperparameter tuning
• Model interpretation and feature importance

### Assignment 9 - Decision Trees and Random Forests

• Prepare a real-world dataset for training
• Train decision tree and random forest
• Tune hyperparameters and regularize

### 6.3 Data Analysis and Visualization with Excel

• Working with sheets, cells, formulas & functions
• Analyzing and visualizing a real-world dataset
• Styling, data validation & conditional formatting

### How to Approach Machine Learning Problems

• Understand business needs and explore the data
• Prepare data for modeling and create a baseline
• Train, evaluate, finetune, and ensemble models

### Tableau for Visualization & Dashboards

• Installing Tableau and importing data
• Creating interactive online dashboards

### Assignment 10 - Excel and Tableau Practice

• Data analysis using Microsoft Excel
• Data visualization using Tableau
• Creating and publishing dashboards

### 5.5 Gradient Boosting Machines with XGBoost

• Data preprocessing and feature engineering
• GBMs training, evaluation, and interpretation
• K-fold cross validation and hyperparameter tuning

### 6.5 Introduction to Product Analytics

• User journeys and the Pirate funnel
• Key metrics & tools to measure them
• Improving products using machine learning

### Project 3 - Machine Learning with Python

• Perform data cleaning & feature engineering
• Training, compare & tune multiple models
• Document and publish your work online

### 5.6 Unsupervised Machine Learning using Scikit-Learn

• Clustering using KMeans and DBSCAN
• Dimensionality reduction using PCA and t-SNE
• Collaborative filtering and recommendations

### Workshop - Machine Learning Project from Scratch

• Feature engineering, model selection & tuning
• Practical tips for training better models faster

### Data Science & Machine Learning Bootcamp Recap

• Recap of topics covered in the bootcamp
• How to organize knowledge using mental maps
• Tips and tricks to learn new topics quickly

• Challenges in making a career transition
• Overview of resources shared in the course
• Common mistakes and how to avoid them

### 7.1 Researching Data Science Job Roles

• Understanding data science job roles
• Researching salaries & company reviews
• Identifying the right job role to target

### 6.2 Crafting a Job Winning Resume

• Writing a Bio with education and work history
• Extracting information into a 1-page Resume
• Customizing your Resume based on job roles

### AMA - Aakanksha N S, ML Engineer at Snap

• Data science & ML in the real-world
• Importance of projects & blog posts
• How to find your first data science job

### Assignment 11 - Write Your Data Science Resume(s)

• Research and identify your target job roles
• Write your bio and data science Resume(s)
• Complete your hiring profile on Jovian

### 7.3 Building Your Professional Profile

• Improving LinkedIn, GitHub, and Jovian profiles
• Writing blog posts and sharing your work online
• Improving, documenting & publishing your projects

### Preparing for Data Science Interviews

• How employers shortlist & evaluate candidates
• How to prepare for non-technical interviews
• How to prepare for technical interviews

• Making a career transition to data science
• How to learn on the job & keep improving
• What employers look for during interviews

### Assignment 12 - Improve Your Professional Profiles

• Improve your Medium profile to showcase blog posts
• Improve your GitHub profile to showcase projects

### 7.5 Applying for Jobs the Right Way

• How to ask for referrals from working professionals
• How to send cold emails to recruiters & employers
• How to keep track of your job application pipeline

### 7.6 Finding Part-Time and Freelance Work

• How, when & where to look for part-time work
• How to write proposals and set expectations
• How to deliver great work and resolve conflicts

### AMA - Kartik Godawat, Founder & ML Consultant, DeepKlarity

• Making a career transition to data science
• Tips for self-learning and staying motivated
• Balancing Kaggle, freelance and side projects

### Assignment 13 - Cold Emails and Cover Letter

• Write a cover letter for job applications
• Write a cold email template for referrers
• Write a cold email template for employers

### 7.7 Rejection, Feedback and Improvement

• How to deal with shortlisting & interview rejections
• How to ask for and react to constructive feedback
• How to continue learning while applying for jobs

### Mock Interview and Graduation Day

• Mock interview preparation guidelines
• Recap, next steps, and ongoing support

### AMA - Nishant Poddar, Data Engineer at Solita

• Learning while working full time
• Preparing for job interviews
• How to handle rejections

### Assignment 14 - Hiring Profile Presentation & Video

• Create your hiring profile presentation
• Write a script for your hiring profile video
• Record & publish your hiring profile video

### Data Science Mock Interview

• Introduce yourself & answer general questions
• Answer technical data science & ML questions

### 6.6 Window Functions in SQL

• Syntax and use cases of window functions
• Aggregation, ranking, and value functions
• Advanced windowing with rows & ranges

### 6.7 Advanced Topics in SQL

• Working with dates and strings
• Stored procedures and recursion

### Web Development with Python

• Getting Started with GitHub, Replit & Flask
• Web development with HTML, CSS & Bootstrap
• Cloud deployment and domain configuration

### Database-Driven Web Applications

• Connecting Flask apps to a cloud DB
• Rendering dynamic database-driven pages
• Saving form responses to database

### How to Finish Projectsoptional

• Principles for scoping projects
• Common objections to scoping
• Linear work vs iterative work

### Assignment - Advanced SQL Practiceoptional

• Window Function Syntax
• Date, Aggregate & Ranking Functions
• CTE, CASE-WHEN-THEN-ELSE

### Solving Programming Challengesoptional

• Finding practice problems online
• Approaching LeetCode problems
• Debugging and fixing errors

### Recommendations using Collaborative Filteringoptional

• Representing movies and users as vectors
• Training a recommendation model with FastAi

### Dashboarding with Power BIoptional

• Installing Power BI and importing data
• Publishing interactive dashboards online

### Deploying a Machine Learning Modeloptional

• Create a Simple Web app using Flask
• Run the model locally on your machine
• Publish the Webpage using Render