-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathindex.qmd
62 lines (51 loc) · 2.39 KB
/
index.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
---
title: "ETC4500/5450 Advanced R Programming"
---
R is widely used as a tool for data analysis and one of the most popular programming languages. This unit delves into R from the programming aspect instead of using it as a data analysis tool. You will learn a variety of programming paradigms and delve into the foundations of R as a programming language.
## Learning outcomes
1. be familiar with the foundations of R programming
2. understand a variety of programming paradigms, including functional programming and object-oriented programming
3. utilise R’s functional and object-oriented programming systems
4. integrate the concept of metaprogramming to evaluate and construct new functions
## Teachers
* [**Rob J Hyndman**](https://robjhyndman.com). Chief Examiner. Email: [[email protected]](mailto:[email protected])
* [**Mitchell O'Hara-Wild**](https://mitchelloharawild.com). Email: [[email protected]](mailto:[email protected])
* [**Thomas Lumley**](https://profiles.auckland.ac.nz/t-lumley). (Week 6)
* [**Tomasz Wozniak**](https://github.com/donotdespair). (Week 12)
## References
* [*Advanced R*, 2e](https://adv-r.hadley.nz/) by Hadley Wickham.
* [*Advanced R Solutions*](https://advanced-r-solutions.rbind.io/) by Malte Grosser, Henning Bumann & Hadley Wickham.
* [*R packages*, 2e](http://r-pkgs.org/) by Hadley Wickham & Jenny Bryan.
* [*Mastering Shiny*](https://mastering-shiny.org/) by Hadley Wickham.
* [*The {targets} R package user manual*](https://books.ropensci.org/targets/) by Will Landau.
```{r}
#| label: load_packages
#| include: false
#| message: false
#| warning: false
#| echo: false
#| cache: false
library(tidyverse)
options(knitr.kable.NA = '')
source(here::here("course_info.R"))
week <- as.integer(1 + ((Sys.Date() - as_date(start_semester))/7))
```
## Weekly schedule
* 2 hour workshop, Wednesdays 9am-11am each week, in Menzies E164.
```{r}
#| label: schedule2
#| message: false
#| warning: false
#| echo: false
#| output: asis
schedule |>
transmute(
Date = format(Date + 2, "%d %b"),
Show = !is.na(Week) & Week <= 12,
Topic = if_else(!Show, Topic, glue::glue("[{Topic}](./week{Week}/index.html)")),
#Reference = if_else(!Show, Reference, glue::glue("[{Reference}]({Reference_URL})")),
Assessments = if_else(is.na(Assignment), Assignment, glue::glue("[{Assignment}]({File})"))
) |>
select(-Show) |>
knitr::kable(format = "markdown")
```