The IQUIT R video series
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
I’ve uploaded 20+ R tutorials to YouTube for a new undergraduate course in Ecology and Evolutionary Biology at CU developed by Andrew Martin and Brett Melbourne, which in jocular anticipation was named IQUIT: an introduction to quantitative inference and thinking.
We made the videos to address the most common R programming problems that arose for students in the first iteration of the course. These short tutorials may be of use elsewhere:
- everything is an object
- addition, subtraction, multiplication
- assignment
- vectors vs. scalars
- create vectors with
c()
- how to explore the structure of a vector
class,length,str
- input and output
- single argument functions:
sqrt,log,exp - multi-argument functions:
round
Creating special vectors: sequences and repetition
- generate integer sequence:
: - create sequence
seq(hit args) - repeat something
rep(also note argument structure)
Relational operators and logical data types
- logical types (intro to relational operators)
==,!=,>,<,>=,<=TRUEandFALSE
- character objects
- character vectors
- relational operators on character vectors
2-d data structures: matrices and data frames
- data frames can hold lots of different data types
- matrix elements must be of the same type
Intro to indexing: matrices and vectors
- indexing and subsetting with
[ - review
str - a bit with relational operators
Data frame subsetting and indexing
- indexing with relational operators
- 3 ways to subset data frame:
df[c 1="names")" language="("column"][/c], df$column, df[, 1]
R style & other secrets to happiness
- basics of R style: spacing, alignment,
- breaking up run-on lines
- workspace management
ls,rm- choosing good names for files and objects
- commenting
- reading in data with
read.csv - automatic conversion of missing values to
NA
- mixed type errors (numbers read in as characters because one cell has a letter)
- search path errors
is.na
Visualization part 1: intro to plot()
plot- arguments:
xlab,ylab,col
Visualization part 2: other types of plots
- histograms, jitter plots, line graphs
Visualization part 3: adding data to plots
- adding
points - adding
lines, andsegments(alsoabline)
Visualization part 4: annotation and legends
- annotation via
text - adding legends
Visualization part 5: graphical parameters
- commonly used parameters
- for points:
col,cex,pch(see?pointsforpchoptions) - for lines:
col,lwd,lty
- the power of the
forloop - creating objects to hold results ahead of time, rather than growing objects
mean,sd,var,median
Randomization & sampling distributions
sampleandrep
Debugging R code 1: letting R find your data
- working directory errors when reading in data
- problems with typos, using objects that don’t exist
Debugging R code 2: unreported errors
- errors do not always bring error messages
- steps to finding & fixing errors
- explore the effect of
non the uncertainty in a sample mean
Conveying uncertainty with confidence intervals while not obscuring the data
- constructing confidence intervals
- plot CIs using the
segmentsfunction
- given two populations, simulate the null sampling distribution of the difference in means
- randomly assign individuals to a group using
sampleor some other scheme, then iteratively simulate differences in means with CIs
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.