Skip to content
The Tidynomicon: A Brief Introduction to R for Python Programmers
Branch: master
Clone or download
Latest commit a04f510 May 18, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
data Tidying up and reorganizing May 17, 2019
docs
etc Tidying up and reorganizing May 17, 2019
faithful
figures New logo May 14, 2019
keypoints
objectives
papers
questions Combining testing and error handling May 7, 2019
results Tidying up and reorganizing May 17, 2019
scripts Revising chapter on error handling and testing May 9, 2019
tests/testthat Revising chapter on error handling and testing May 9, 2019
unicef Converting to Bookdown. Apr 26, 2019
.gitignore Checking that chunks have labels. May 9, 2019
.nojekyll
.words Template files Feb 10, 2019
CITATION.md Converting to Bookdown. Apr 26, 2019
CONDUCT.md Template files Feb 10, 2019
CONTRIBUTING.md Converting to Bookdown. Apr 26, 2019
DESCRIPTION Converting to Bookdown. Apr 26, 2019
LICENSE.md Template files Feb 10, 2019
Makefile Checking that chunks have labels. May 9, 2019
README.md Converting to Bookdown. Apr 26, 2019
_bookdown.yml Tidying up and reorganizing May 17, 2019
_output.yml Fixing cross-references and citations May 1, 2019
appendix.Rmd Converting to Bookdown. Apr 26, 2019
basics.Rmd Revising chapter on error handling and testing May 9, 2019
book.bib Cleaning up non-standard evaluation chapter May 9, 2019
cleanup.Rmd Tidying up and reorganizing May 17, 2019
control.Rmd Checking that chunks have labels. May 9, 2019
countries.py Converting to Bookdown. Apr 26, 2019
debt.Rmd
favicon.ico favicon Oct 6, 2018
gloss.md
index.Rmd New logo May 14, 2019
indexing.Rmd Checking that chunks have labels. May 9, 2019
keypoints.Rmd Combining testing and error handling May 7, 2019
now.json Converting to Bookdown. Apr 26, 2019
nse.Rmd Cleaning up non-standard evaluation chapter May 9, 2019
objectives.Rmd Combining testing and error handling May 7, 2019
oop.Rmd Minor tidying up of OOP chapter May 9, 2019
practice.Rmd More practice exercises May 18, 2019
preamble.tex Converting to Bookdown. Apr 26, 2019
projects.Rmd
python.Rmd Tidying up and reorganizing May 17, 2019
references.Rmd Converting to Bookdown. Apr 26, 2019
shiny.Rmd new_session for all Rmd files May 6, 2019
style.css
testerror.Rmd Tidying up and reorganizing May 17, 2019
tidynomicon.Rproj Converting to Bookdown. Apr 26, 2019
tidyverse.Rmd

README.md

The Tidynomicon

A Brief Introduction to R for Python Programmers

"Speak not to me of madness, you who count from zero."

Years ago, Patrick Burns wrote The R Inferno, a guide to R for those who think they are in hell. Upon first encountering the language after two decades of using Python, I thought Burns was an optimist---after all, hell has rules.

I have since realized that R does too, and that they are no more confusing or contradictory than those of other programming languages. They only appear so because R draws on a tradition unfamiliar to those of us raised with derivatives of C. Counting from one, copying data rather than modifying it, lazy evaluation: to quote the other bard, these are not mad, just differently sane.

Welcome, then, to a universe where the strange will become familiar, and everything familiar, strange. Welcome, thrice welcome, to R.

Setting Up

  1. Create an account on rstudio.cloud, then create a new project and start typing.
  2. Alternatively:
    1. Install R. We recommend that you do not use conda, Brew, or other platform-specific package managers to do this, as they sometimes only install part of what you need.
    2. Install RStudio.
    3. In the RStudio console, run install.packages("tidyverse") to install the tidyverse libraries. We will install others as we go along, but we're going to need this soon.

Please see BUILD.md for a description of how to rebuild this lesson and why it is designed the way it is.

You can’t perform that action at this time.