18 KiB
Data Science for Beginners - A Curriculum
Azure Cloud Advocates at Microsoft are excited to present a 10-week, 20-lesson curriculum all about Data Science. Each lesson includes pre-lesson and post-lesson quizzes, step-by-step instructions, a solution, and an assignment. Our project-based approach helps you learn by doing, which is a proven way to make new skills stick.
A big thank you to our authors: Jasmine Greenaway, Dmitry Soshnikov, Nitya Narasimhan, Jalen McGee, Jen Looper, Maud Levy, Tiffany Souterre, Christopher Harrison.
🙏 Special thanks 🙏 to our Microsoft Student Ambassador authors, reviewers, and content contributors, including Aaryan Arora, Aditya Garg, Alondra Sanchez, Ankita Singh, Anupam Mishra, Arpita Das, ChhailBihari Dubey, Dibri Nsofor, Dishita Bhasin, Majd Safi, Max Blum, Miguel Correa, Mohamma Iftekher (Iftu) Ebne Jalal, Nawrin Tabassum, Raymond Wangsa Putra, Rohit Yadav, Samridhi Sharma, Sanya Sinha, Sheena Narula, Tauqeer Ahmad, Yogendrasingh Pawar, Vidushi Gupta, Jasleen Sondhi.
![]() |
---|
Data Science For Beginners - Sketchnote by @nitya |
🌐 Multi-Language Support
Supported via GitHub Action (Automated & Always Up-to-Date)
French | Spanish | German | Russian | Arabic | Persian (Farsi) | Urdu | Chinese (Simplified) | Chinese (Traditional, Macau) | Chinese (Traditional, Hong Kong) | Chinese (Traditional, Taiwan) | Japanese | Korean | Hindi | Bengali | Marathi | Nepali | Punjabi (Gurmukhi) | Portuguese (Portugal) | Portuguese (Brazil) | Italian | Polish | Turkish | Greek | Thai | Swedish | Danish | Norwegian | Finnish | Dutch | Hebrew | Vietnamese | Indonesian | Malay | Tagalog (Filipino) | Swahili | Hungarian | Czech | Slovak | Romanian | Bulgarian | Serbian (Cyrillic) | Croatian | Slovenian | Ukrainian | Burmese (Myanmar)
If you want additional translations, the supported languages are listed here
Join Our Community
Are you a student?
Get started with these resources:
- Student Hub page: This page offers beginner resources, student packs, and even ways to get a free certification voucher. Bookmark it and check back regularly, as the content is updated at least monthly.
- Microsoft Learn Student Ambassadors: Join a global community of student ambassadors—this could be your gateway to Microsoft.
Getting Started
Teachers: We’ve included some suggestions on how to use this curriculum. We’d love your feedback in our discussion forum!
Students: To use this curriculum independently, fork the entire repository and complete the exercises on your own, starting with the pre-lesson quiz. Then, read the lesson and complete the activities. Try to build the projects by understanding the lessons rather than copying the solution code (though the code is available in the /solutions folders for each project-based lesson). Another idea is to form a study group with friends and go through the content together. For further learning, we recommend Microsoft Learn.
Meet the Team
Gif by Mohit Jaisal
🎥 Click the image above to watch a video about the project and the people who created it!
Pedagogy
We’ve designed this curriculum with two key teaching principles: it’s project-based and includes frequent quizzes. By the end of this series, students will have learned the basics of data science, including ethical considerations, data preparation, working with data, data visualization, data analysis, real-world applications of data science, and more.
Additionally, a low-stakes quiz before each lesson helps students focus on the topic, while a post-lesson quiz reinforces retention. This curriculum is designed to be flexible and enjoyable, and it can be completed in full or in part. The projects start small and gradually increase in complexity over the 10-week program.
Find our Code of Conduct, Contributing, Translation guidelines. We welcome your constructive feedback!
Each lesson includes:
- Optional sketchnote
- Optional supplemental video
- Pre-lesson warmup quiz
- Written lesson
- For project-based lessons, step-by-step guides on how to build the project
- Knowledge checks
- A challenge
- Supplemental reading
- Assignment
- Post-lesson quiz
A note about quizzes: All quizzes are stored in the Quiz-App folder, with a total of 40 quizzes, each containing three questions. They are linked within the lessons, but the quiz app can be run locally or deployed to Azure; follow the instructions in the
quiz-app
folder. Localization is ongoing.
Lessons
![]() |
---|
Data Science For Beginners: Roadmap - Sketchnote by @nitya |
Lesson Number | Topic | Lesson Grouping | Learning Objectives | Linked Lesson | Author |
---|---|---|---|---|---|
01 | Defining Data Science | Introduction | Learn the basic concepts behind data science and how it’s related to artificial intelligence, machine learning, and big data. | lesson video | Dmitry |
02 | Data Science Ethics | Introduction | Concepts, challenges, and frameworks related to data ethics. | lesson | Nitya |
03 | Defining Data | Introduction | How data is classified and its common sources. | lesson | Jasmine |
04 | Introduction to Statistics & Probability | Introduction | Mathematical techniques in probability and statistics to understand data. | lesson video | Dmitry |
05 | Working with Relational Data | Working With Data | Introduction to relational data and the basics of exploring and analyzing relational data using SQL (pronounced “see-quell”). | lesson | Christopher |
06 | Working with NoSQL Data | Working With Data | Introduction to non-relational data, its various types, and the basics of exploring and analyzing document databases. | lesson | Jasmine |
07 | Working with Python | Working With Data | Basics of using Python for data exploration with libraries like Pandas. Foundational knowledge of Python programming is recommended. | lesson video | Dmitry |
08 | Data Preparation | Working With Data | Techniques for cleaning and transforming data to address challenges like missing, inaccurate, or incomplete data. | lesson | Jasmine |
09 | Visualizing Quantities | Data Visualization | Learn how to use Matplotlib to visualize bird data 🦆 | lesson | Jen |
10 | Visualizing Distributions of Data | Data Visualization | Visualizing observations and trends within an interval. | lesson | Jen |
11 | Visualizing Proportions | Data Visualization | Visualizing discrete and grouped percentages. | lesson | Jen |
12 | Visualizing Relationships | Data Visualization | Visualizing connections and correlations between data sets and their variables. | lesson | Jen |
13 | Meaningful Visualizations | Data Visualization | Techniques and guidance for creating visualizations that effectively solve problems and provide insights. | lesson | Jen |
14 | Introduction to the Data Science lifecycle | Lifecycle | Overview of the data science lifecycle and its first step: acquiring and extracting data. | lesson | Jasmine |
15 | Analyzing | Lifecycle | Techniques for analyzing data during this phase of the data science lifecycle. | lesson | Jasmine |
16 | Communication | Lifecycle | Presenting insights from data in a way that decision-makers can easily understand. | lesson | Jalen |
17 | Data Science in the Cloud | Cloud Data | Introduction to data science in the cloud and its advantages. | lesson | Tiffany and Maud |
18 | Data Science in the Cloud | Cloud Data | Training models using low-code tools. | lesson | Tiffany and Maud |
19 | Data Science in the Cloud | Cloud Data | Deploying models with Azure Machine Learning Studio. | lesson | Tiffany and Maud |
20 | Data Science in the Wild | In the Wild | Real-world projects driven by data science. | lesson | Nitya |
GitHub Codespaces
Follow these steps to open this sample in a Codespace:
- Click the Code drop-down menu and select the Open with Codespaces option.
- Select + New codespace at the bottom of the pane. For more info, check out the GitHub documentation.
VSCode Remote - Containers
Follow these steps to open this repo in a container using your local machine and VSCode with the VS Code Remote - Containers extension:
- If this is your first time using a development container, ensure your system meets the prerequisites (e.g., Docker installed) in the getting started documentation.
To use this repository, you can either open the repository in an isolated Docker volume:
Note: This will use the Remote-Containers: Clone Repository in Container Volume... command to clone the source code in a Docker volume instead of the local filesystem. Volumes are the preferred method for persisting container data.
Or open a locally cloned or downloaded version of the repository:
- Clone this repository to your local filesystem.
- Press F1 and select the Remote-Containers: Open Folder in Container... command.
- Select the cloned copy of this folder, wait for the container to start, and try things out.
Offline access
You can run this documentation offline using Docsify. Fork this repo, install Docsify on your local machine, then in the root folder of this repo, type docsify serve
. The website will be served on port 3000 on your localhost: localhost:3000
.
Note, notebooks will not be rendered via Docsify, so when you need to run a notebook, do that separately in VS Code running a Python kernel.
Other Curricula
Our team produces other curricula! Check out:
- Generative AI for Beginners
- Generative AI for Beginners .NET
- Generative AI with JavaScript
- Generative AI with Java
- AI for Beginners
- Data Science for Beginners
- Bash for Beginners
- ML for Beginners
- Cybersecurity for Beginners
- Web Dev for Beginners
- IoT for Beginners
- Machine Learning for Beginners
- XR Development for Beginners
- Mastering GitHub Copilot for AI Paired Programming
- XR Development for Beginners
- Mastering GitHub Copilot for C#/.NET Developers
- Choose Your Own Copilot Adventure
Disclaimer:
This document has been translated using the AI translation service Co-op Translator. While we strive for accuracy, please note that automated translations may contain errors or inaccuracies. The original document in its native language should be regarded as the authoritative source. For critical information, professional human translation is recommended. We are not responsible for any misunderstandings or misinterpretations resulting from the use of this translation.