created & maintained by @clarecorthell, founding partner of Luminant Data Science Consulting
The open-source curriculum for learning Data Science. Foundational in both theory and technologies, the OSDSM breaks down the core competencies necessary to making use of data.
With Coursera, ebooks, Stack Overflow, and GitHub -- all free and open -- how can you afford not to take advantage of an open source education?
We need more Data Scientists.
...by 2018 the United States will experience a shortage of 190,000 skilled data scientists, and 1.5 million managers and analysts capable of reaping actionable insights from the big data deluge.
-- McKinsey Report Highlights the Impending Data Scientist Shortage 23 July 2013
There are little to no Data Scientists with 5 years experience, because the job simply did not exist.
-- David Hardtke "How To Hire A Data Scientist" 13 Nov 2012
Classic academic conduits aren't providing Data Scientists -- this talent gap will be closed differently.
Academic credentials are important but not necessary for high-quality data science. The core aptitudes – curiosity, intellectual agility, statistical fluency, research stamina, scientific rigor, skeptical nature – that distinguish the best data scientists are widely distributed throughout the population.
We’re likely to see more uncredentialed, inexperienced individuals try their hands at data science, bootstrapping their skills on the open-source ecosystem and using the diversity of modeling tools available. Just as data-science platforms and tools are proliferating through the magic of open source, big data’s data-scientist pool will as well.
And there’s yet another trend that will alleviate any talent gap: the democratization of data science. While I agree wholeheartedly with Raden’s statement that “the crème-de-la-crème of data scientists will fill roles in academia, technology vendors, Wall Street, research and government,” I think he’s understating the extent to which autodidacts – the self-taught, uncredentialed, data-passionate people – will come to play a significant role in many organizations’ data science initiatives.
-- James Kobielus, Closing the Talent Gap 17 Jan 2013
Start here.
Intro to Data Science / UW Videos
- Topics: Python NLP on Twitter API, Distributed Computing Paradigm, MapReduce/Hadoop & Pig Script, SQL/NoSQL, Relational Algebra, Experiment design, Statistics, Graphs, Amazon EC2, Visualization.
Data Science / Harvard Videos & Course
- Topics: Data wrangling, data management, exploratory data analysis to generate hypotheses and intuition, prediction based on statistical methods such as regression and classification, communication of results through visualization, stories, and summaries.
Data Science with Open Source ToolsBook $27
- Topics: Visualizing Data, Estimation, Models from Scaling Arguments, Arguments from Probability Models, What you Really Need to Know about Classical Statistics, Data Mining, Clustering, PCA, Map/Reduce, Predictive Analytics
- Example Code in: R, Python, Sage, C, Gnu Scientific Library
This is an introduction geared toward those with at least a minimum understanding of programming, and (perhaps obviously) an interest in the components of Data Science (like statistics and distributed computing). Out of personal preference and need for focus, I geared the original curriculum toward Python tools and resources. R resources can be found here.
[★ What are some good resources for learning about numerical analysis? / Quora ] (http://www.quora.com/What-are-some-good-resources-for-learning-about-numerical-analysis)
Linear Algebra & Programming
Linear Algebra Khan Academy / Videos
Linear Algebra / Levandosky Stanford / Book
$10Linear Programming (Math 407) University of Washington / Course
The Manga Guide to Linear Algebra Book
$19Convex Optimization
Convex Optimization / Boyd Stanford / Lectures
Statistics
Statistics I Princeton / Coursera
Stats in a Nutshell Book
$29Think Stats: Probability and Statistics for Programmers Digital & Book
$25Differential Equations & Calculus
Differential Equations in Data Science Python Tutorial
Problem Solving
Problem-Solving Heuristics "How To Solve It" Polya / Book
$10
Get your environment up and running with the Data Science Toolbox
Algorithms
Algorithms Design & Analysis I Stanford / Coursera
Algorithm Design, Kleinberg & Tardos Book
$125Distributed Computing Paradigms
*See Intro to Data Science UW / Lectures on MapReduce
Intro to Hadoop and MapReduce Cloudera / Udacity Course *includes select free excerpts of Hadoop: The Definitive Guide Book
$29Databases
Introduction to Databases Stanford / Online Course
SQL School Mode Analytics / Tutorials
SQL Tutorials SQLZOO / Tutorials
Data Mining
Mining Massive Data Sets / Stanford Coursera & Digital & Book
$58Mining The Social Web Book
$30Introduction to Information Retrieval / Stanford Digital & Book
$56
OSDSM Specialization: Web Scraping & Crawling
- Machine Learning
Foundational & Theoretical
- Machine Learning Ng Stanford / Coursera & Stanford CS 229
- A Course in Machine Learning UMD / Digital Book
- The Elements of Statistical Learning / Stanford Digital & Book
$80& Study Group - Machine Learning Caltech / Edx
Practical
Programming Collective Intelligence Book
$27Machine Learning for Hackers ipynb / digital book
Intro to scikit-learn, SciPy2013 youtube tutorials
Probabilistic Modeling
Probabilistic Programming and Bayesian Methods for Hackers Github / Tutorials
Probabilistic Graphical Models Stanford / Coursera
Deep Learning (Neural Networks)
Neural Networks Andrej Karpathy / Python Walkthrough
Neural Networks U Toronto / Coursera
Deep Learning for Natural Language Processing CS224d Stanford
Social Network & Graph Analysis
Social and Economic Networks: Models and Analysis / Stanford / Coursera
Social Network Analysis for Startups Book
$22Natural Language Processing
From Languages to Information / Stanford CS147 Materials
How to Write a Spelling Correcter / Norvig (Tutorial)[http://norvig.com/spell-correct.html]
One of the "unteachable" skills of data science is an intuition for analysis. What constitutes valuable, achievable, and well-designed analysis is extremely dependent on context and ends at hand.
Big Data Analysis with Twitter UC Berkeley / Lectures
Exploratory Data Analysis Tukey / Book
$81in Python
Data Analysis in Python Tutorial
Python for Data Analysis Book
$24An Example Data Science Process ipynb
- Visualization
Data Visualization and Communication
- The Truthful Art: Data, Charts, and Maps for Communication Cairo / Book
$21
Theoretical Design of Information
- Envisioning Information Tufte / Book
$36 - The Visual Display of Quantitative Information Tufte / Book
$27
Applied Design of Information
- Information Dashboard Design: Displaying Data for At-a-Glance Monitoring Stephen Few / Book
$29
Theoretical Courses / Design & Visualization
- Data Visualization University of Washington / Slides & Resources
- Berkeley's Viz Class UC Berkeley / Course Docs
- Rice University's Data Viz class Rice University / Slides
Practical Visualization Resources
- D3 Library / Scott Murray Blog / Tutorials
- Interactive Data Visualization for the Web / Scott Murray Online Book & Book
$26
OSDSM Specialization: Data Journalism
- Learn Python the Hard Way Digital & Book
$23 - Python Class / Google
- Think Python Digital & Book
$34
Installing Basic Packages Python, virtualenv, NumPy, SciPy, matplotlib and IPython & Using Python Scientifically
Command Line Install Script for Scientific Python Packages
- numpy Tutorial / Stanford CS231N
- Pandas Cookbook (data structure library)
More Libraries can be found in the "awesome machine learning" repo & in related specializations
Data Structures & Analysis Packages
- Flexible and powerful data analysis / manipulation library with labeled data structures objects, statistical functions, etc pandas & Tutorials Python for Data Analysis / Book
Machine Learning Packages
- scikit-learn - Tools for Data Mining & Analysis
Networks Packages
- networkx - Network Modeling & Viz
Statistical Packages
- PyMC - Bayesian Inference & Markov Chain Monte Carlo sampling toolkit
- Statsmodels - Python module that allows users to explore data, estimate statistical models, and perform statistical tests
- PyMVPA - Multivariate Pattern Analysis in Python
Natural Language Processing & Understanding
Data APIs
- twython - Python wrapper for the Twitter API
Visualization Packages
- matplotlib - well-integrated with analysis and data manipulation packages like numpy and pandas
- Seaborn - a high-level statistical visualization package built on top of matplotlib
iPython Data Science Notebooks
Data Science in IPython Notebooks (Linear Regression, Logistic Regression, Random Forests, K-Means Clustering)
A Gallery of Interesting IPython Notebooks - Pandas for Data Analysis
Datasets are now here
R resources are now here
- Doing Data Science: Straight Talk from the Frontline O'Reilly / Book
$25 - The Data Science Handbook: Advice and Insights from 25 Amazing Data Scientists Book
$22
- Capstone Analysis of Your Own Design; Quora's Idea Compendium
- Healthcare Twitter Analysis Coursolve & UW Data Science
- Analyze your LinkedIn Network Generate & Download Adjacency Matrix
- DataTau - The "Hacker News" of Data Science
- Wikipedia - The free encyclopedia
- The Signal and The Noise - Nate Silver
$15- Bestseller Pop Sci - Zipfian Academy's List of Resources
- A Software Engineer's Guide to Getting Started with Data Science
- Data Scientist Interviews / Metamarkets
- /r/MachineLearning
- The Life of a Data Scientist / Josh Wills
- The Talking Machines - Podcast about Machine Learning
- What Data Science Is / Hilary Mason
- Metacademy - Search for a concept you want to learn
- Coursera - Online university courses
- Wolfram Alpha - The smart number and info cruncher
- Khan Academy - High quality, free learning videos
Non-Open-Source books, courses, and resources are noted with $.
Please Contribute -- this is Open Source!