This guide will help you set up your environment to work with the Data Science for Beginners curriculum.
Before you begin, you should have:
- Basic familiarity with command line/terminal
- A GitHub account (free)
- Stable internet connection for initial setup
The easiest way to get started is with GitHub Codespaces, which provides a complete development environment in your browser.
- Navigate to the repository
- Click the Code dropdown menu
- Select the Codespaces tab
- Click Create codespace on main
- Wait for the environment to initialize (2-3 minutes)
Your environment is now ready with all dependencies pre-installed!
For working on your own computer, follow the detailed instructions below.
Git is required to clone the repository and track your changes.
Windows:
- Download from git-scm.com
- Run the installer with default settings
macOS:
- Install via Homebrew:
brew install git - Or download from git-scm.com
Linux:
# Debian/Ubuntu
sudo apt-get update
sudo apt-get install git
# Fedora
sudo dnf install git
# Arch
sudo pacman -S git# Clone the repository
git clone https://github.com/microsoft/Data-Science-For-Beginners.git
# Navigate to the directory
cd Data-Science-For-BeginnersPython 3.7 or higher is required for the data science lessons.
Windows:
- Download Python from python.org
- During installation, check "Add Python to PATH"
- Verify installation:
python --versionmacOS:
# Using Homebrew
brew install python3
# Verify installation
python3 --versionLinux:
# Most Linux distributions come with Python pre-installed
python3 --version
# If not installed:
# Debian/Ubuntu
sudo apt-get install python3 python3-pip
# Fedora
sudo dnf install python3 python3-pipIt's recommended to use a virtual environment to keep dependencies isolated.
# Create a virtual environment
python -m venv venv
# Activate the virtual environment
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activateInstall the required data science libraries:
pip install jupyter pandas numpy matplotlib seaborn scikit-learnThe quiz application requires Node.js and npm.
Windows/macOS:
- Download from nodejs.org (LTS version recommended)
- Run the installer
Linux:
# Debian/Ubuntu
# WARNING: Piping scripts from the internet directly into bash can be a security risk.
# It is recommended to review the script before running it:
# curl -fsSL https://deb.nodesource.com/setup_lts.x -o setup_lts.x
# less setup_lts.x
# Then run:
# sudo -E bash setup_lts.x
#
# Alternatively, you can use the one-liner below at your own risk:
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
# Fedora
sudo dnf install nodejs
# Verify installation
node --version
npm --version# Navigate to quiz app directory
cd quiz-app
# Install dependencies
npm install
# Return to root directory
cd ..For offline access to documentation:
npm install -g docsify-cli# Activate your virtual environment if not already activated
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activate
# Start Jupyter Notebook
jupyter notebookYour browser should open with the Jupyter interface. You can now navigate to any lesson's .ipynb file.
# Navigate to quiz app
cd quiz-app
# Start development server
npm run serveThe quiz app should be available at http://localhost:8080 (or another port if 8080 is busy).
# From the root directory of the repository
docsify serveThe documentation should be available at http://localhost:3000.
If you have Docker installed, you can use VS Code Dev Containers:
- Install Docker Desktop
- Install Visual Studio Code
- Install the Remote - Containers extension
- Open the repository in VS Code
- Press
F1and select "Remote-Containers: Reopen in Container" - Wait for the container to build (first time only)
- Explore the README.md for an overview of the curriculum
- Read USAGE.md for common workflows and examples
- Check TROUBLESHOOTING.md if you encounter issues
- Review CONTRIBUTING.md if you want to contribute
If you encounter issues:
- Check the TROUBLESHOOTING.md guide
- Search existing GitHub Issues
- Join our Discord community
- Create a new issue with detailed information about your problem