| W Sept. 4th |
course |
Why programming? |
Reproducible research, Bespoke custom analysis, Independence for creating models, Beautiful figures, Sharing analytical tools, Package ecosystem |
| W Sept. 4th |
course |
Intro to computer and programming logic |
Intro to programming logic, Computers, Memory, Processors, Programming languages, Interpreted vs compiled languages, Machine code vs source code, Using text files, Text editor, IDE. |
| Th Sept. 5th |
office hour |
Help installing prerequisites |
R/python/Rstudio/VsCode/git on your machine |
| M Sept. 9th |
course |
Basic interaction with R and python |
Basic programming; Setting up R, python and your project; Variables; Maths; Packages |
| W Sept. 11th |
course |
Version control |
git basics, project discipline, read only data, write only outputs. |
| Th Sept. 12th, F Sept. 13th |
precept |
Hello World! R/python/git |
Getting a working setup |
| M Sept. 16th |
course |
Control flow 1 |
if, for, while… |
| W Sept. 18th |
course |
Control flow 2 |
Functions and environments |
| Th Sept. 19th, F Sept. 20th |
precept |
Control flow |
Let’s start to actually code |
| M Sept. 23th |
course |
Data input and output |
Reading data from file, data-structures for ecological and genomics data |
| W Sept. 25th |
course |
String manipulation |
Strings and regular expressions |
| Th Sept. 26th, F Sept. 27th |
precept |
Input-output and string |
Talking with your program |
| M Sept. 30th |
course |
Data wrangling 1 |
The verbs of data wrangling: filter, select, mutate, summarize, joins… |
| W Oct. 2nd |
course |
Data wrangling 2 |
Complex sequences of data manipulation |
| Th Oct. 3rd, F Oct. 4th |
precept |
Data wrangling |
|
| M Oct. 7th |
course |
Applying and mapping functions. |
Split-apply-combine methods; apply family, plyr, dplyr, map, purrr. Modularizing code. |
| W Oct. 9th |
course |
Finding new genes |
Guest Lecture (Cara Weisman) |
| Th Oct. 10th, F Oct. 11th |
precept |
Precept TBD + help on midterm assignment |
|
| Su Oct. 13th |
assignment |
Midterm assignment is due |
Be on time, 11:59pm! |
| M Oct. 21st |
course |
Recap and midterm solutions |
What have you learned? |
| W Oct. 23th |
course |
Plotting 1 |
The grammar of graphics |
| Th Oct. 24th, F Oct. 25th |
precept |
Plotting |
|
| M Oct. 28th |
course |
Plotting 2 |
Making plots pretty |
| W Oct. 30th |
course |
Plotting 3 |
Designing good visualizations |
| Th Oct. 31st, F Nov. 1st |
precept |
More plotting |
|
| M Nov. 4th |
course |
Statistics/Data Science 1 |
Simple models, uncertainties, hypothesis testing |
| W Nov. 6th |
course |
Statistics/Data Science 2 |
Models, regressions and machine learning |
| Th Nov. 7th, F Nov. 8th |
precept |
Statistics/Data Science |
|
| M Nov. 11th |
course |
Bash and working on a cluster |
Remote file, parallelization, job management |
| W Nov. 13th |
course |
Bioinformatics 1 |
Guest lecture (Andrew Webb). Objectives of bioinformatic sequence analysis and available tools |
| Th Nov. 14th, F Nov. 15th |
precept |
Bioinformatics |
|
| M Nov. 18th |
course |
Bioinformatics 2 |
Guest lecture (Andrew Webb). Working through a SNP calling pipeline with NGS data |
| W Nov. 20th |
course |
Setting up a bioinformatics pipeline |
Guest lecture (Andrew Webb). Using snakemake to do real work |
| Th Nov. 21st, F Nov. 22nd |
precept |
Snakemake |
|
| M Nov. 25th |
course |
Spatial data |
Dealing with shape formats and making maps |
| M Dec. 2th |
assignment |
Open science exercise is due |
Be on time! |
| M Dec. 2th |
course |
Phylogenetic Inference / Stats |
Guest lecture (Tiago Simoes). Using sequence data to uncover evolutionary relations |
| W Dec. 4th |
course |
Computer age statistical inference |
Basic hypothesis testing using permutations |
| Th Dec. 12th |
office hour |
Help on final assignment |
|
| Su Dec. 19th |
assignment |
Final assignment is due |
Be on time, 11:59pm! |