---
title: Python for Data Science
description: Python for data science focuses on using the Python programming language to extract insights from data. You will understand how to write clean code, use core libraries, and implement workflows for data manipulation, visualization, and modeling.
category: programming-tech
subcategory: data-science
difficulty: beginner, intermediate, advanced
url: /subject/python-for-data-science
---

# Python for Data Science

Python for data science focuses on using the Python programming language to extract insights from data. You will understand how to write clean code, use core libraries, and implement workflows for data manipulation, visualization, and modeling.

## Available Resources

2 Books • 4 Courses • 4 Websites

## Books

### 1. Effective Pandas 2: Opinionated Patterns for Data Manipulation

**Author:** Matt Harrison

Opinionated guide to idiomatic pandas 2: chaining operations instead of intermediate variables, choosing correct dtypes, avoiding SettingWithCopy problems, and writing pipelines that stay readable and testable. Aimed at people who already use pandas but produce tangled code.

**Difficulty:** Advanced | **Language:** English | **Price:** Paid

**Link:** https://www.amazon.com/Effective-Pandas-Opinionated-Patterns-Manipulation/dp/B0CSRGH8R3?tag=edmonddante07-20

**Tags:** pandas, python, data-wrangling, method-chaining, dataframes

### 2. Python for Data Analysis, 3rd Edition

**Author:** Wes McKinney

Wes McKinney, who created pandas, walks through NumPy arrays, Series and DataFrames, data cleaning, joins, group-by aggregation, time series, and plotting. After it you can load messy real datasets and reshape them into analysis-ready tables.

**Difficulty:** Beginner | **Language:** English | **Price:** Paid

**Link:** https://www.amazon.com/dp/109810403X?tag=edmonddante07-20

**Tags:** pandas, numpy, python, data-cleaning, time-series

## Youtubes

### 1. Pandas Tutorials (Corey Schafer)

**Author:** Corey Schafer

Video series building from installation and loading CSV files through selecting rows and columns, filtering, updating data, sorting, grouping and aggregating, and handling missing values, each demonstrated live in a notebook. Suits people who prefer coding along to reading documentation.

**Difficulty:** Beginner | **Language:** English | **Price:** Free

**Link:** https://www.youtube.com/playlist?list=PL-osiE80TeTsWmV9i9c58mdDCSskIFdDS

**Tags:** pandas, python, data-analysis, dataframes, video-tutorial

## Courses

### 1. Data 100 Course Notes: Principles and Techniques of Data Science (UC Berkeley)

Berkeley's upper-division course notes: pandas, regex and data cleaning, EDA, visualization, sampling, SQL, linear and logistic regression, gradient descent, cross-validation, regularization, and PCA. Supplies the statistical reasoning behind the Python code that tutorials usually skip.

**Difficulty:** Intermediate | **Language:** English | **Price:** Free

**Link:** https://ds100.org/course-notes/

**Tags:** data-science, pandas, sql, regression, exploratory-data-analysis

### 2. Computational and Inferential Thinking: The Foundations of Data Science (Berkeley Data 8)

**Author:** Ani Adhikari, John DeNero, David Wagner

The free textbook behind UC Berkeley's Data 8 course, teaching Python alongside sampling, hypothesis testing, bootstrap confidence intervals, regression, and classification. Finishing it gives you the statistical reasoning to judge whether a pattern in your data is real.

**Difficulty:** Beginner | **Language:** English | **Price:** Free

**Link:** https://inferentialthinking.com/

**Tags:** data-science, statistics, hypothesis-testing, bootstrap, python

### 3. Kaggle Learn

Free interactive micro-courses from Kaggle, each a few hours of short lessons with in-browser coding exercises. Topics include Python, pandas, data visualization, SQL, feature engineering and introductory machine learning, giving learners working code skills for basic data analysis and modelling.

**Difficulty:** Beginner | **Language:** English | **Price:** Free

**Link:** https://www.kaggle.com/learn

**Tags:** python, pandas, machine-learning, data-visualization, sql

### 4. Harvard University's CS109 Data Science

**Author:** Pavlos Protopapas, Kevin Rader, Natesh Pillai, Mark Glickman

Harvard's two-semester data science course with public lectures, labs and homework. CS109A covers data collection, cleaning, visualization and regression and classification models; CS109B adds deep learning and probabilistic methods. Students learn to run a full analysis in Python.

**Difficulty:** Intermediate | **Language:** English | **Price:** Free

**Link:** https://cs109.org/

**Tags:** data-science, python, machine-learning, data-visualization, statistical-modeling

## Websites

### 1. Scientific Python Lectures

**Author:** Scientific Python developers

Tutorial series maintained by Scientific Python developers covering NumPy array mechanics, Matplotlib, SciPy routines, debugging, mathematical optimization, and profiling slow code. It builds the numerical layer beneath pandas, explaining why vectorized operations are fast and where they break.

**Difficulty:** Advanced | **Language:** English | **Price:** Free

**Link:** https://lectures.scientific-python.org/

**Tags:** numpy, scipy, matplotlib, scientific-computing, python

### 2. The Good Research Code Handbook

**Author:** Patrick Mineault

A short handbook on structuring analysis code: project layout, environments, moving notebook logic into modules, testing, and documentation. After working through it you can turn one-off exploratory notebooks into a reproducible project someone else can run.

**Difficulty:** Intermediate | **Language:** English | **Price:** Free

**Link:** https://goodresearch.dev/

**Tags:** research-code, reproducibility, project-structure, testing, python

### 3. numpy-financial – Financial Functions for Python

**Author:** NumPy Developers

Official documentation for numpy-financial, the NumPy project's package of elementary financial functions split out of NumPy itself. It covers net present value, internal rate of return, payments, interest rates and future value, so you can compute loan and investment cash-flow figures in Python.

**Difficulty:** Beginner | **Language:** English | **Price:** Free

**Link:** https://numpy.org/numpy-financial/

**Tags:** python, numpy, time-value-of-money, npv, irr, financial-functions

### 4. Scikit-learn Official Documentation

Official user guide, API reference and worked examples for scikit-learn, the standard Python machine learning library. Covers classification, regression, clustering, dimensionality reduction, pipelines, preprocessing and model selection, so readers can build, tune and evaluate models with cross-validation.

**Difficulty:** Intermediate | **Language:** English | **Price:** Free

**Link:** https://scikit-learn.org/stable/documentation.html

**Tags:** scikit-learn, python, machine-learning, model-evaluation, supervised-learning

---

*This content is part of Dantes.io - Your Treasure Map to Knowledge*

*Curated by humans at Dantes.io. Personal study use welcome; republishing this curation requires permission (team@dantes.io).*

View this page online: https://dantes.io/subject/python-for-data-science