## Path overview

In this path, you’ll learn how to master mandatory data scientist technical skills, including object-oriented and functional programming with Python, libraries like scikit-learn, Matplotlib, NumPy, and pandas. You’ll also master web scraping and SQL queries, deep learning and machine learning, and predictive analysis. To help you stand out from other candidates, we included concepts such as the UNIX command line, Git, and GitHub to develop efficient collaboration.

Best of all, you’ll learn by doing — you’ll write code and get feedback directly in the browser. You’ll apply your skills to several guided projects involving realistic business scenarios to build your portfolio and prepare for your next interview.

## Key skills

- Programming with Python to perform complex statistical analysis of large datasets
- Performing SQL queries and web-scraping to explore and extract data from databases and websites
- Building insightful data visualizations to tell stories
- Automating machine learning algorithms and build predictive modeling processes

## Path outline

###
**Part 1: ** Python Introduction [5 courses]

### Introduction to Python Programming 3h

Objectives- Write computer programs using Python
- Save values using variables
- Process numerical data and text data
- Create lists using Python

### For Loops and Conditional Statements in Python 5h

Objectives- Repeat a process using a for loop
- Employ if, else, and elif statements
- Employ logical operators and comparison operators
- Employ Jupyter Notebook

### Dictionaries, Frequency Tables, and Functions in Python 4h

Objectives- Create Python dictionaries
- Build frequency tables using dictionaries
- Write Python functions
- Debug functions

### Python Functions and Jupyter Notebook 5h

Objectives- Define function arguments
- Write functions that return multiple variables
- Employ Jupyter notebook
- Build a portfolio project

### Intermediate Python for Data Science 8h

Objectives- Clean and analyze text data
- Define object-oriented programming in Python
- Process dates and times

###
**Part 2: ** Data Analysis and Visualization [3 courses]

### Introduction to Pandas and NumPy for Data Analysis 13h

Objectives- Improve your workflow using vectorized operations
- Select data by value using Boolean indexing
- Analyze data using pandas and NumPy

### Introduction to Data Visualization in Python 8h

Objectives- Visualize time series data with line plots
- Define correlations and visualize them with scatter plots
- Visualize frequency distributions with bar plots and histograms
- Improve your exploratory data visualization workflow using pandas
- Visualize multiple variables using Seaborn's relational plots

### Telling Stories Using Data Visualization and Information Design 5h

Objectives- Create graphs using information design principles
- Create narrative data visualizations using Matplotlib
- Create visual patterns using Gestalt principles
- Control attention using pre-attentive attributes
- Employ Matplotlib's built-in styles

###
**Part 3: ** Data Cleaning [3 courses]

### Data Cleaning and Analysis in Python 11h

Objectives- Employ data aggregation techniques
- Combine datasets
- Transform and reshape data
- Clean strings and resolve missing data

### Advanced Data Cleaning in Python 9h

Objectives- Clean and manipulate text data using regular expressions
- Employ lambda functions and list comprehension with pandas
- Resolve missing data

### Data Cleaning Project Walkthrough 7h

Objectives- Complete a data cleaning project from start to finish
- Improve your data cleaning skills

###
**Part 4: ** The Command Line [2 courses]

### Command Line for Data Science 4h

Objectives- Employ the command line for data science
- Define important command line concepts
- Modify the behavior of commands with options
- Navigate the filesystem
- Employ glob patterns and wildcards
- Manage users and permissions

### Text Processing for Data Science 4h

Objectives- Read and explore documentation
- Inspect files
- Perform basic text processing
- Define different kinds of output
- Redirect and pipe output
- Employ streams and file descriptors

###
**Part 5: ** Working with Data Sources [4 courses]

### SQL Fundamentals 5h

Objectives- Analyze data using SQL
- Organize data using SQL
- Write SQL queries to estimate summary statistics

### Intermediate SQL for Data Analysis 10h

Objectives- Query data across multiple tables
- Answer business questions using SQL
- Identify table relations

### Introduction to APIs and Web Scraping in Python 4h

Objectives- Query external data sources using an API
- Scrape data from the web

### Data Analysis for Business in Python 6h

Objectives- Resolve fuzzy language
- Identify the business context of data science
- Communicate with a non-technical audience
- Define metrics

###
**Part 6: ** Probability and Statistics [5 courses]

### Introduction to Statistics in Python 9h

Objectives- Sample data using simple random sampling, stratified sampling, and cluster sampling
- Measure variables in statistics
- Create frequency distribution tables

### Intermediate Statistics in Python 8h

Objectives- Summarize a distribution using the mean, the weighted mean, the median, or the mode
- Measure the variability of a distribution using the variance and the standard deviation
- Compare values using z-scores

### Introduction to Probability in Python 5h

Objectives- Estimate theoretical and empirical probabilities
- Employ the fundamental rules of probability
- Employ combinations and permutations

### Introduction to Conditional Probability in Python 6h

Objectives- Assign probabilities based on conditions
- Assign probabilities based on event independence
- Assign probabilities based on prior knowledge
- Create spam filters using multinomial Naive Bayes

### Hypothesis Testing in Python 4h

Objectives- Perform a permutation test
- Perform significance testing to understand an outcome's importance
- Define regular and multi-category chi-squared tests

###
**Part 7: ** Machine Learning In Python [9 courses]

### Introduction to Supervised Machine Learning in Python 9h

Objectives- Establish a machine learning workflow
- Implement the K-Nearest Neighbors algorithm for a classification task from scratch using Pandas
- Implement the K-Nearest Neighbors algorithm using scikit-learn
- Evaluate a machine learning model
- Find optimal hyperparameter values using grid search

### Introduction to Unsupervised Machine Learning in Python 4h

Objectives- Identify applications of unsupervised machine learning
- Implement a basic k-means algorithm
- Evaluate and optimize the performance of a k-means model
- Visualize the model
- Build a k-means model using scikit-learn

### Calculus For Machine Learning 2h

Objectives- Define mathematical functions using calculus
- Employ intermediate machine learning techniques

### Linear Algebra For Machine Learning 3h

Objectives- Define linear systems using linear algebra
- Employ intermediate machine learning techniques

### Linear Regression Modeling in Python 3h

Objectives- Describe a linear regression model
- Construct a linear regression model and evaluate it based on the data
- Interpret the results of a linear regression model
- Use a linear regression model for inference and prediction

### Gradient Descent Modeling in Python 8h

Objectives- Code a basic Gradient Descent algorithm
- Recognize the limitations of basic Gradient Descent
- Contrast the basic Batch and Stochastic Gradient Descent uses
- Visualize Stochastic Gradient Descent using Matplotlib
- Apply Stochastic Gradient Descent in Python using Scikit Learn

### Logistic Regression Modeling in Python 2h

Objectives- Describe a logistic regression model
- Construct a logistic regression model and evaluate it based on the data
- Interpret the results of a logistic regression model
- Use a logistic regression model for inference and prediction

### Decision Tree and Random Forest Modeling in Python 10h

Objectives- Create, customize, and visualize decision trees
- Use and interpret decision trees on new data
- Calculate optimal decision paths
- Optimize trees by altering their parameters
- Apply the random forest prediction technique

### Optimizing Machine Learning Models in Python 12h

Objectives- Distinguish between different optimization techniques
- Identify the best optimization approach for your project
- Apply optimization methods to improve your model
- Employ machine learning tools on various optimization methods

###
**Part 8: ** Deep Learning in Python [1 course]

### Introduction to Deep Learning 4h

Objectives- Represent neural networks
- Reveal how neural networks capture nonlinearity in the data
- Improve model performance by adding hidden layers

###
**Part 9: ** Advanced Topics in Data Science [3 courses]

### Intermediate Command Line for Data Science 3h

Objectives- Employ Jupyter console
- Process data from the command line

### Introduction to Git and Version Control 4h

Objectives- Organize your code using version control
- Employ Git and GitHub to collaborate with others
- Resolve conflicts in version control

### Analyzing Large Datasets in Spark and Map-Reduce 3h

Objectives- Identify the map-reduce framework for breaking down tasks
- Employ Spark to process raw files
- Process structured datasets using Spark SQL and Spark DataFrames

## The Dataquest guarantee

Dataquest has helped thousands of people start new careers in data. If you put in the work and follow our path, you’ll master data skills and grow your career.

We believe so strongly in our paths that we offer a full satisfaction guarantee. If you complete a career path on Dataquest and aren’t satisfied with your outcome, we’ll give you a refund.

## Master skills faster with Dataquest

### Go from zero to job-ready

Learn exactly what you need to achieve your goal. Don’t waste time on unrelated lessons.

### Build your project portfolio

Build confidence with our in-depth projects, and show off your data skills.

### Challenge yourself with exercises

Work with real data from day one with interactive lessons and hands-on exercises.

### Showcase your path certification

Impress employers by completing a capstone project and certifying it with an expert review.

## Projects in this path

### Guided Project: Prison Break

Learn the basics of Jupyter Notebook by analyzing a dataset on helicopter prison escapes

### Project: Learn and Install Jupyter Notebook

Learn the basics of Jupyter Notebook

### Guided Project: Profitable App Profiles for the App Store and Google Play Markets

Learn to combine the skills you learned in this course to perform practical data analysis.

### Guided Project: Exploring Hacker News Posts

Practice using loops, cleaning strings, and working with dates in Python.

### Guided Project: Exploring eBay Car Sales Data

Practice data cleaning and data exploration using pandas