Monday, March 14, 2016

Learning Python: How should I start learning Python?

Learning Python: 
How should I start learning Python?

Answer Wiki

List of resources - Please append your entries. No Affiliate links / SPAM please.

Sunday, March 13, 2016

18 Free Tutorials for Learning R Programming

R is a powerful tool for data scientists and statisticians. The capabilities of R are being further developed daily by the proactive user base at the Comprehensive R Archive Network. The applications of R are becoming greater as the number of add-on packages increases.  Learning the basics of R now will unlock the door to a very useful tool for presenting and analyzing data. Here are some free resources for learning R programing.
Screenshot from Quick R Website
    1. Quick R – Quick R is a great reference site for learning all the fundamentals of R. The site provides a straight and simple introduction into R and its applications in statistics and graphing. This includes articles explaining the architecture of the software.
    2. R Tutorial an R Introduction to Stats -This site contains tutorials for learning the basics of R programming. It also has lessons explaining how to compute elementary to more complex statistics using R.
    3. An Intro to R from CRAN – A heavyweight 100+ page manual for those serious about learning the foundations of R. This is straight from the R Project, the community that created, maintains, and updates R.
    4. Cookbook for R – This website has everything from the basics of R coding syntax to debugging scripts. Inquisitive beginners will find concise coding examples and descriptions without any fluff to confuse. This acts as a great reference for all those getting acclimated to the ins and outs of R.
    5. The Art of R Programming – This PDF is an early draft of the book The Art of R Programming. It is a lengthy(~200 pages) introduction to R for those with programming experience. The lessons within are designed to be completed in Terminal rather than in the R console.
    6. R Video Tutorials – Google developers published this 21-part series for those looking to learn R from the ground up. The videos range from two to five minutes each and provide a brisk walk-through of the foundations of R.
    7. Introduction to R Programming – A comprehensive 40-part series of using R for statistical computation and visualization. This is a much deeper dive than the series provided by Google with videos between five and ten minutes long.
Google Analytics Graphics
    1. Visualizing Google Analytics Data with R – This tutorial explains how to visualize Google analytics data using R. No experience of R is necessary but it is recommended as you will need to be able to understand the code samples provided.
    2. How to Make a Heat Map – This is a quick guide on how to create a heatmap in R. This tutorial will show you how to load some NBA stats and create a customizable heatmap in seven easy steps.
    3. Spatial Data in R: Using R as a GIS – This is a great tutorial for integrating Google Maps into R. Users can learn how to create a powerful and free Geographic Information System(GIS) utilizing the analysis capabilities of R and the sleek map layers of Google maps. Use this to create meaningful maps without an expensive subscription to ESRI’s ArcMap or settling for other often buggy open-source GIS platforms.
    4. Introduction to R: Graphs and Maps – This is a short tutorial on the basics of R, including examples of plotting data with ggplot2 and mapping data with ggmap. Also included is a comparison of R and SAS
Shiny-R-Screenshot
    1. Shiny – Shiny is used to turn R analysis into interactive web applications. Here is the official Shiny tutorial from RStudio. No knowledge of HTML, CSS, or JavaScript needed.
    2. R Shiny App Tutorial – For those who prefer tutorials done entirely in video, here is a 15-part series for learning Shiny to produce web applications using R.
    3. CRAN’s List of Tutorials -The R Project’s very own list of useful tutorials for a multitude of R-related niches in several different languages. This is the official community supported and approved source to get users up, and running with R.
Swirl-R-Screenshot
  1. Swirl – Swirl is a free companion to the R software that sets up interactive tutorials directly in the R console. Each module is 10-20 minutes in length and the software is updated every one to two months to keep current with new releases of R.
  2. Two Minute R Tutorials – The host makes each of the 91 two-minute tutorials educational, surprisingly fun and comical. You will laugh. These tutorials are quick bursts of information well worth the two minutes.
  3. R-bloggers – This is the definitive R blog produced by a collection of R aficionados. It contains everything from how-tos on getting started with R to news on the latest packages available on the Comprehensive R Archive Network(CRAN). This is a great resource to both learn and stay up-to-date with the current happenings of R developers.
  4. R-podcast – R podcast has been out of production since 2013 but is still a great resource for beginners who are auditory learners. There are 13 published episodes, some well over an hour, that lead listeners through the basics of R and into more advanced topics. The site provides useful links and articles that go along with each podcast.

Learn More R, Understand More Data

R and all of its add-ons are free and open source. As more and more fields are taking advantage of Big Data to progress their interests we should see an increase in the amount of companies looking to utilize R programming. Let us know how your use of R has made data analysis easier for you.

The Open Source Data Science Masters

The Open-Source Data Science Masters

The open-source curriculum for learning Data Science. Foundational in both theory and technologies, the OSDSM breaks down the core competencies necessary to make data useful.

The Internet is Your Oyster

With Coursera, ebooks, Stack Overflow, and GitHub -- all free and open -- how can you afford not to take advantage of an open source education?

The Motivation

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.
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

An Academic Shortfall

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

Ready?


The Open Source Data Science Curriculum

Start here. Intro to Data Science UW / Coursera
  • 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 Video Archive & 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 Tools Book $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

A Note About Direction

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.

Math

Computing

Get your environment up and running with the Data Science Toolbox
OSDSM Specialization: Web Scraping & Crawling

Data Design

OSDSM Specialization: Data Journalism

Python (Learning)

Python (Libraries)

Command Line Install Script for Scientific Python Packages
More Libraries can be found in related specializations
  • Data Structures & Analysis Packages
  • Machine Learning Packages
  • Networks Packages
  • 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
    • NLTK - Natural Language Toolkit
    • Gensim - Python library for topic modelling, document indexing and similarity retrieval with large corpora. Target audience is the natural language processing (NLP) and information retrieval (IR) community.
  • Live Data Packages
    • twython - Python wrapper for the Twitter API
  • Visualization Packages
    • matplotlib - well-integrated with analysis and data manipulation packages like numpy and pandas
    • Orange - Open source data visualization and analysis for novice and experts. Data mining through visual programming or Python scripting. Components for machine learning. Add-ons for bioinformatics and text mining

Datasets are now here

R resources are now here

Data Science as a Profession

Capstone Project


Resources


Notation

Non-Open-Source books, courses, and resources are noted with $.

Contribute

Please Contribute Your Ideas -- this is Open Source!
Please showcase your own specialization & transcript by submitting a markdown file pull request in the /transcripts directory with your name! eg clare-corthell-2014.md