background-image: url(images/bg1.jpg) background-size: cover class: hide-slide-number title-slide :::::::::: { .grid grid: 50% 50% / 1fr;} ::: item center # <span style="text-shadow: 2px 2px 30px white;">R Markdown Workshop</span> <br><br> ## <span style="color:yellow;text-shadow: 2px 2px 30px black;">The Basics</span> ::: ::: center shade_black animated bounceInUp slower Presented by Emi Tanaka School of Mathematics and Statistics <img src="assets/USydLogo-white.svg" style="width:200px"><br>
<i class="fas fa-envelope faa-float animated "></i>
dr.emi.tanaka@gmail.com
<i class="fab fa-twitter faa-float animated faa-fast "></i>
@statsgen .bottom_abs.width100.bg-black[ 19th Nov 2019 @ SSA Vic | Melbourne, Australia ] ::: :::::::::: ::: { .shade_black .pos .font_small width:20%;right:10px;bottom:20%;padding:5px;border: solid 5px white;} <i class="fas fa-exclamation-circle"></i> These slides are viewed best by Chrome and occasionally need to be refreshed if elements did not load properly. See here for <a href=session1.pdf style="color:white!important"/>PDF <i class="fas fa-file-pdf"></i></a>. ::: --- ::: {.grid grid: 1fr / 1.2fr 2fr;} ::: item bg-pro <br> <div class="circle-image"> <center> <img src="images/avatar.png" width = "150px"/> </center> </div> **Emi Tanaka** <br> *Lecturer in Statistics*<br> The University of Sydney <br> <i class="fas fa-globe"></i> https://emitanaka.org/ <i class="fas fa-envelope"></i> dr.emi.tanaka@gmail.com <i class="fab fa-twitter"></i> @statsgen ::: ::: item # About your instructor * I'm moving to Monash University starting January 2020 * I teach R at university courses as well as use it daily for research and hobby * If you ever wonder who answers those stackoverflow questions, I'm one of those magic fairies <center> <a href="https://stackexchange/users/10113966/emi"><img src="https://stackoverflow.com/users/flair/10113966.png" width="208" height="58" alt="profile for Emi at Stack Overflow, Q&A for professional and enthusiast programmers" title="profile for Emi at Stack Overflow, Q&A for professional and enthusiast programmers" style="border:solid 2px black;"></a> </center> .blue[**Introduce yourself to someone you don't know!**] ::: :::
03
:
00
--- # What you can do with R Markdown? -- <br> <center> <iframe src="session1.html" width="80%" height="450px" style="border: solid 3px black;"></iframe> </center> <div class="color-box"> These <b>slides</b> are made using R Markdown. </div> --- # What you can do with R Markdown? <br> <center> <iframe src="output/html/html_template_paper.html" width="80%" height="450px" style="border: solid 3px black;"></iframe> </center> <div class="color-box"> This <b>dynamic report</b> is made using R Markdown. </div> --- # What you can do with R Markdown? <br> <center> <object data="output/articles/article_template_pnas_article.pdf" type="application/pdf" width="80%" height="450px" style="border: solid 3px black;"> <embed src="output/articles/article_template_pnas_article.pdf" type="application/pdf" /> </object> </center> <div class="color-box"> This <b>manuscript</b> is made using R Markdown. </div> --- # What you can do with R Markdown? <br> <center> <iframe src="https://otexts.com/fpp2/" width="80%" height="450px" style="border: solid 3px black;"></iframe> </center> <div class="color-box"> This <b>online book</b> is made using R Markdown.<br> Available at https://otexts.com/fpp2/ <br> The <b>pdf book</b> version is also made using R Markdown. </div> --- # What you can do with R Markdown? <br> <div class="grid" style="grid: 1fr / 1fr 1fr;"> <div class="item"> <center> <iframe src="https://thesis.earo.me/" width="80%" height="450px" style="border: solid 3px black;"></iframe> </center> </div> <div class="item"> <center> <a href="https://github.com/earowang/thesis/blob/master/_thesis/thesis.pdf"><img src="images/earothesis.png" width="60%" style="border: solid 3px black;"/></a> </center> </div> </div> <div class="color-box"> This <b>thesis</b> (online and pdf) is made using R Markdown.<br> Available at https://thesis.earo.me/ <br> </div> --- # What you can do with R Markdown? <br> <div class="grid" style="grid: 1fr / 1fr 1fr;"> <div class="item"> <center> <iframe src="https://emitanaka.org/r/posts/2018-12-12-scientific-and-technical-blogging-radix-vs-blogdown/" width="80%" height="450px" style="border: solid 3px black;"></iframe> </center> </div> <div class="item"> <center> <iframe src="https://emitanaka.rbind.io/post/scientific-and-technical-blogging-radix-vs-blogdown-remix/" width="80%" height="450px" style="border: solid 3px black;"></iframe> </center> </div> </div> <div class="color-box"> These <b>blog posts</b> are made using R Markdown. </div> --- # What you can do with R Markdown? ::: { .grid .grid: 1fr / 2.5fr 1fr; } ::: item Possibilities are endless... * Microsoft Word document (.doc, .docx) * Open Document Text (.odt) * Rich text format (.rtf) * Power point slides (.ppt, .pptx) * Posters (as .html or .pdf) * Resume (as .html or .pdf) * Interactive R Notebooks (.html) * Markdown documents (.md) * Dashboard (.html) ::: ::: item <br> <center> <img src="images/rmarkdown-book-cover.png" width = "50%"> </center> .font_small[Check out [Xie et al. (2018) R Markdown: The Definite Guide](https://bookdown.org/yihui/rmarkdown/).] ::: ::: --- # Schedule <br> Time | Activity :----|:----- 1:30PM - 3.00PM | 📜 *Session 1: R Markdown Basics* 3.00PM - 3.30PM | ☕ *Afternoon Tea* 3.30PM - 4.30pm | 📖 *Session 2: Reproducible Reports* 4.30PM - 5.00pm | 🦋 *Session 3: Pretty Presentations* --- # Get Started ::: paddings Find slides at<br><Br> .center[ .blue[<i class="fas fa-link"></i> https://rmd-ssavic-2019.netlify.com/] ] <br> Open <br><Br> .center[ .blue[<i class="fas fa-link"></i> http://bit.ly/rmd-ssavic-2019] ] <br> and save a permanent copy to your RStudio Cloud account for the R exercises. <br><Br> ::: --- # Before R Markdown (and Sweave) <br> <center> <img src="images/rmd-motivation.png" width = "90%"/> </center> --- # R Markdown in a nutshell 🥜 ::: paddings R Markdown integrates .blue[**text**] + .blue[`code`] in one source document with ability to knit *to many output formats* (via Pandoc). <img src="images/rmd-overview.png" width = "100%"/> ::: --- class: center middle .font_large[🔍 Open and inspect the file] .font_large[`first-rmarkdown.Rmd`] --- # R Markdown Basics <img src="images/demo-first-rmd.png" width="80%" /> --- # Knitting: <code>Rmd</code> <i class="far fa-file"></i> <i class="fas fa-arrow-right"></i> <code>md</code> <i class="far fa-file"></i> <i class="fas fa-arrow-right"></i> <code>html</code> <i class="far fa-file"></i> <img src="images/demo-knit-html.png" width="100%" /> --- # Knitting: <code>Rmd</code> <i class="far fa-file"></i> <i class="fas fa-arrow-right"></i> <code>md</code> <i class="far fa-file"></i> <i class="fas fa-arrow-right"></i> <code>pdf</code> <i class="far fa-file"></i> <img src="images/demo-knit-pdf.png" width="100%" /> --- class: center middle .font_large[How does it all work?] <br> <img src="images/rmd-magic.png" width = "700px"/> --- class: font_small # R Markdown under the hood: .blue[`html_document`] .indigo[`knitr`] 📦 does the hard work of converting <code>Rmd</code> <i class="far fa-file"></i> <i class="fas fa-arrow-right"></i> <code>md</code> <i class="far fa-file"></i> ::: grid ::: item ````markdown --- title: "My Report" output: html_document --- # Hello ```{r} 1 + 1 ``` ```` <p></p> ::: ::: item ````markdown --- title: "My Report" output: html_document --- # Hello ```r 1 + 1 ``` ``` ## [1] 2 ``` ```` <p></p> ::: ::: ::: {.pos top:20%;left:20%;} `Rmd` <i class="far fa-file"></i> ::: ::: {.pos top:20%;left:70%;} `md` <i class="far fa-file"></i> ::: --- class: font_small # R Markdown under the hood: .blue[`html_document`] Then .indigo[`rmarkdown`] 📦 prepares <code>md</code> <i class="far fa-file"></i> for .indigo[`pandoc`] to convert to html <i class="far fa-file"></i>. ::: grid ::: item ````markdown --- title: "My Report" output: html_document --- # Hello ```r 1 + 1 ``` ``` ## [1] 2 ``` ```` <p></p> ::: ::: item ```html <body> <div class="container-fluid main-container"> <div class="fluid-row" id="header"> <h1 class="title toc-ignore">My Report</h1> </div> <div id="hello" class="section level1"> <h1>Hello</h1> <pre class="r"><code>1 + 1</code></pre> <pre><code>## [1] 2</code></pre> </div> </div> </body> ``` ::: ::: ::: {.white .font_small .pos bottom:60px; right:10%; width:200px;padding:5px;background-color:rgb(0,0,0, 0.3);border: solid 3px black; } <i class="fas fa-exclamation-triangle"></i> This html file is missing some elements due to restriction of space. ::: ::: {.pos top:20%;left:20%;} `md` <i class="far fa-file"></i> ::: ::: {.pos top:20%;left:70%;} `html` <i class="far fa-file"></i> ::: --- class: font_small # R Markdown under the hood: .blue[`pdf_document`] Same as before: `knitr` 📦 converts <code>Rmd</code> <i class="far fa-file"></i> <i class="fas fa-arrow-right"></i> <code>md</code> <i class="far fa-file"></i> ::: grid ::: item ````markdown --- title: "My Report" output: pdf_document --- # Hello ```{r} 1 + 1 ``` ```` <p></p> ::: ::: item ````markdown --- title: "My Report" output: pdf_document --- # Hello ```r 1 + 1 ``` ``` ## [1] 2 ``` ```` <p></p> ::: ::: ::: { .pos top:20%;left:20%; } `Rmd` <i class="far fa-file"></i> ::: ::: { .pos top:20%;left:70%; } `md` <i class="far fa-file"></i> ::: --- class: font_small # R Markdown under the hood: .blue[`pdf_document`] Then `rmarkdown` 📦 prepares <code>md</code> <i class="far fa-file"></i> for `pandoc` to convert to .indigo[`tex`] <i class="far fa-file"></i> <i class="fas fa-arrow-right"></i> pdf <i class="fas fa-file-pdf"></i>. ::: grid ::: item ````markdown --- title: "My Report" output: html_document --- # Hello ```r 1 + 1 ``` ``` ## [1] 2 ``` ```` <p></p> ::: ::: item ```latex \begin{document} \maketitle \hypertarget{hello}{% \section{Hello}\label{hello}} \begin{Shaded} \begin{Highlighting}[] \DecValTok{1} \OperatorTok{+}\StringTok{ }\DecValTok{1} \end{Highlighting} \end{Shaded} \begin{verbatim} ## [1] 2 \end{verbatim} \end{document} ``` ::: ::: ::: {.pos top:20%;left:10%;} `md` <i class="far fa-file"></i> ::: ::: {.pos top:20%;right:40%;} `tex` <i class="far fa-file"></i> ::: ::: {.white .font_small .pos bottom:7%; right:10%; width:200px;padding:5px;background-color:rgb(0,0,0, 0.3);border: solid 3px black; } <i class="fas fa-exclamation-triangle"></i> This tex document is missing elements before `\begin{document}` due to restriction of space. ::: --- class: center middle .font_large[Meta data with YAML] <br> <img src="images/metadata.png" width = "300px"/> --- # YAML - YAML Ain't Markup Language :::: { .grid grid: 1fr / 1fr 2fr; } ::: item Basic format ```markdown --- key: value --- ``` ::: ::: item Example ``` --- title: "R Markdown Workshop" subtitle: "The Basics" author: "Emi Tanaka" date: "`r Sys.Date()`" output: html_document --- ``` There must be a space after "`:`"! <p></p> ::: ::: --- class: font_small # Default (minimal) html output ``` <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta name="author" content="Emi Tanaka" /> <meta name="date" content="2019-11-19" /> <title>R Markdown Workshop</title> </head> <body> <h1 class="title toc-ignore">R Markdown Workshop</h1> <h3 class="subtitle">The Basics</h3> <h4 class="author">Emi Tanaka</h4> <h4 class="date">2019-11-19</h4> </body> </html> ``` <p></p> ::: { .info-box .pos width:200px;left:30%;top:48%;} html meta data ::: ::: { .info-box .pos width:420px;left:47%;top:70%;} Default html template add special YAML key values to file automatically ::: ::: {.output .pos top:80px; right:20px; width: 450px;} <img src = "images/minimal-html-output.png" width = "400px"/> ::: --- # YAML structure ::: paddings * White spaces indicate structure in YAML - don't use tabs though! * Same as R, you can comment lines by starting with `#`. * YAML is case sensitive. * A `key` can hold multiple values. ```markdown key: - value1 - value2 ``` ```markdown key: [value1, value2] ``` <p></p> ::: --- class: font_small # YAML with multiple key values ``` --- title: "R Package & R Markdown Workshop" author: * - "Damjan Vukcevic" * - "Emi Tanaka" output: html_document --- ``` .output[ html raw file ``` <body> <h1 class="title toc-ignore">R Package & R Markdown Workshop</h1> *<h4 class="author">Damjan Vukcevic</h4> *<h4 class="author">Emi Tanaka</h4> </body> ``` <p></p> ] ::: {.output .pos top:100px; right:20px; width:470px;} <img src = "images/minimal-html-output2.png" width = "450px"/> ::: --- class: font_small # Values spanning multiple lines ```markdown --- title: > this is a **single line** abstract: | this value spans *many lines* and appears as it is output: pdf_document --- ``` Note that there are **two spaces** after each line in the above YAML values. This is necessary to create a new line for markdown. ::: {.output .pos top:80px; right:20px;} <img src = "images/minimal-pdf-output.png" width = "500px"/> ::: --- class: center middle .font_large[🔎 Open and inspect the file] .font_large[`second-rmarkdown.Rmd`] --- # `key` can contain `key`s ::: paddings ``` --- output: html_document: toc: true toc_float: true code_download: true code_folding: "hide" --- ``` .font_large[What does each of the above keys do?] :::
04
:
00
--- # `ymlthis` 📦 ::: grid ::: item <img src="images/ymlthis.png" height = "550px" style="border: solid 1px black;"/> ::: ::: item * If you installed `ymlthis` then go to RStudio > Addins > YMLTHIS * It will launch a shiny app with various YAML options * See also helper functions at https://ymlthis.r-lib.org/ ::: ::: --- class: center middle .font_large[🔧 Open and inspect the file] .font_large[`challenge-01-yaml.Rmd`] --- class: middle center .font_large[Text] <br> <img src="images/text.png" width = "300px"/> --- # Text in Markdown: Headers ::: grid ::: item <br> .text[ ```markdown # Header 1 ## Header 2 ### Header 3 #### Header 4 ##### Header 5 ###### Header 6 ``` <p></p> ] ::: ::: item <Br> .output[ # Header 1 ## Header 2 ### Header 3 #### Header 4 ##### Header 5 ###### Header 6 ] ::: ::: ::: footnote Go to RStudio > Help > Markdown Quick Reference ::: --- # Text in Markdown: Formatting ::: grid ::: item <br> .text[ ```markdown **This text is bold** __This text is also bold__ *This text is italic* _This text is also italic_ **_You can combine both_** ``` <p></p> ] ::: ::: item <p><Br></p> .output[ **This text is bold** __This text is also bold__ *This text is italic* _This text is also italic_ **_You can combine both_** ] ::: ::: ::: footnote Go to RStudio > Help > Markdown Quick Reference ::: --- # Text in Markdown: Lists ::: grid ::: item .text[ ```markdown 1. Breakfast * Cereal * Milk 1. Lunch * Pizza * Tissue box * Soft * Hard * Soy sauce ``` <p></p> ] ::: ::: item .output[ 1. Breakfast * Cereal * Milk 1. Lunch * Pizza * Tissue box * Soft * Hard * Soy sauce ] ::: ::: ::: footnote Go to RStudio > Help > Markdown Quick Reference ::: --- # Markdown: lightweight markup language<br> *Focus on writing - add flair later* ::: {.grid grid: 270px 1fr / 1fr 1fr; } ::: { .item border: double 10px #005ab3; } .blue[`markdown`] ```markdown # Section Bla bla. Then **bold**. ``` ::: ::: item bg-grey .blue[`html`] ```html <h1>Section</h1> Bla bla. Then <b>bold</b>. ``` ::: ::: item bg-grey .blue[`latex`] ```latex \section{Section} Bla bla. Then \textbf{bold}. ``` ::: ::: item .blue[`docx`] # Section Bla bla. Then **bold**. ::: ::: --- class: center middle .font_large[🔧 Open and go through:] .font_large[`challenge-02-table.Rmd`]
05
:
00
--- class: middle center .font_large[Code chunk] <br> <img src="images/code-chunk.png" width = "300px"/> --- # Keyboard shortcut for inserting code chunk ::: paddings <br> In RStudio .Rmd <i class="far fa-file"></i> press <br> * Mac: <kbd>⌘</kbd> + <kbd>⌥</kbd> + <kbd>i</kbd> * PC: <kbd>Ctrl</kbd> + <kbd>Alt</kbd> + <kbd>i</kbd> <br> to insert a chunk of R code ::: font_large ````markdown ```{r} ``` ```` ::: --- # Chunk options: <code>echo</code> & <code>eval</code> ::: grid ::: item ````markdown ```{r, echo = FALSE} plot(speed ~ dist, cars) ``` ```` <center> <i class="fas fa-arrow-down"></i> </center> <img src="figure/unnamed-chunk-1-1.svg" width="288" style="display: block; margin: auto;" /> <p></p> ::: ::: item ````markdown ```{r, eval = FALSE} plot(speed ~ dist, cars) ``` ```` <center> <i class="fas fa-arrow-down"></i> </center> ```r plot(speed ~ dist, cars) ``` <p></p> ::: ::: --- # Valid chunk options <Br> ::: paddings * Chunk options must be written in **one line**, i.e. no line break. * All option values must be **valid R expressions**. Exception is the chunk name. E.g. * `fig.path = figures/` is not valid but <br>`fig.path = "figures/"` is valid * `eval = true` is not valid but<br> `eval = runif(1) > 0.5` is valid ::: --- # Chunk names (or labels) <br> ::: paddings The chunk below is called `plot1`. ````markdown ```{r plot1} ggplot(cars, aes(dist, speed)) + geom_point() ``` ```` All chunks have a label regardless of whether it is explicitly supplied or not. <i class="fa fa-exclamation-triangle"></i> Do not include spaces, "_" or punctuation marks in your chunk name! ::: --- class: center middle .font_large[🔧 Pick your challenge:] <br> * `challenge-03-include.Rmd` * `challenge-04-global-option.Rmd` * `challenge-05-figures.Rmd` * `challenge-06-cache.Rmd` * `challenge-07-names.Rmd`
25
:
00
--- class: middle center .font_large[Inline code] <br> <img src="images/inline-code.png" width = "300px"/> --- # Inline R Commands <Br> ::: paddings Text can contain inline R commands where output is `eval`uated but code is not `echo`ed. ::: <br><br> ::: grid ::: {.item border-right: dashed 3px black; } .label[Text] ```markdown Updated last: `r Sys.Date()` ``` .label[Output] Updated last: 2019-11-18 ::: ::: item .label[Text] ```markdown The value of $\pi$ is `r pi`. ``` .label[Output] The value of `\(\pi\)` is 3.1415927. ::: ::: --- # Accessing YAML meta data inline ::: grid ::: item All YAML meta data are stored in `rmarkdown::metadata` as a list. ``` --- title: "R Markdown Workshop" output: html_document --- ``` --- ```r rmarkdown::metadata$title ``` ``` [1] "R Markdown Workshop" ``` <p></p> ::: ::: item All key values of `params` is stored as a list in `params`. ``` --- params: data: datav1.csv output: pdf_document --- ``` --- ```r params$data ``` ``` [1] "datav1.csv" ``` <p></p> ::: ::: --- class: center middle white background-color: #0a2631 .font_large[Stack your Rmd components as you want but only one YAML piece and it needs to be on the top!] <br> <img src="images/lego-stack.png" width = "600px"/> For workflow, you'd probably want to keep your tower's height manageable. --- # R Markdown is not just for R ::: grid ::: item ````markdown ```{python, echo = FALSE} a = [1, 2, 3] a[0] ``` ```` <center> <i class="fas fa-arrow-down"></i> </center> ``` 1 ``` <p></p> ::: ::: item ````markdown ```{bash, echo = FALSE} date +%B ``` ```` <center> <i class="fas fa-arrow-down"></i> </center> ``` November ``` <p></p> :::: :::: --- class: center middle .font_large[Sharing your html documents] --- # RPubs ::: paddings After knitting, find this Publish button: <center> <img src="images/publish.png" width = "170px" style = "border: solid 1px black;"/> </center> and select RPubs if there is a choice: <center> <img src="images/rpub.png" width = "600px" style = "border: solid 1px black;"/> </center> ::: --- # Netlify: without Git ::: paddings * Rename your output html file as `index.html` * Go to https://app.netlify.com/ * If you are logged in, go to the bottom of Sites to find <center> <img src="images/netlify.png" width = "400px"/> </center> * Drag and drop the folder that contains the `index.html` * 🎉 it's alive! * You probably want to change the site name - to do this go to site > site settings > change site name. ::: --- # Netlify: with Git ::: paddings * Rename your output html file as `index.html` * Git commit your folder (or html file alone if no dependency) * Host it on GitHub (my preference), GitLab or Bitbucket * Go to https://app.netlify.com/ and create a new site from the repo * 🎉🎉🎉🎉🎉 * Again, you probably want to change the site name - to do this go to site > site settings > change site name. ::: --- class: middle center .font_large[ Happy sharing! That's it for the basics! ] --- background-color: #e5e5e5 # Session Information :::: scroll-350 ```r devtools::session_info() ``` ``` ─ Session info ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── setting value version R version 3.6.1 (2019-07-05) os macOS Mojave 10.14.4 system x86_64, darwin15.6.0 ui X11 language (EN) collate en_AU.UTF-8 ctype en_AU.UTF-8 tz Australia/Sydney date 2019-11-18 ─ Packages ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── package * version date lib source anicon 0.1.0 2019-11-07 [1] Github (emitanaka/anicon@0b756df) assertthat 0.2.1 2019-03-21 [1] CRAN (R 3.6.0) backports 1.1.5 2019-10-02 [1] CRAN (R 3.6.0) broom 0.5.2 2019-04-07 [1] CRAN (R 3.6.0) callr 3.3.2 2019-09-22 [1] CRAN (R 3.6.0) cellranger 1.1.0 2016-07-27 [1] CRAN (R 3.6.0) cli 1.1.0 2019-03-19 [1] CRAN (R 3.6.0) colorspace 1.4-1 2019-03-18 [1] CRAN (R 3.6.0) countdown 0.3.3 2019-11-18 [1] Github (gadenbuie/countdown@5c895d9) crayon 1.3.4 2017-09-16 [1] CRAN (R 3.6.0) desc 1.2.0 2018-05-01 [1] CRAN (R 3.6.0) devtools 2.2.1 2019-09-24 [1] CRAN (R 3.6.0) digest 0.6.22 2019-10-21 [1] CRAN (R 3.6.0) dplyr * 0.8.3 2019-07-04 [1] CRAN (R 3.6.0) ellipsis 0.3.0 2019-09-20 [1] CRAN (R 3.6.0) emo 0.0.0.9000 2019-11-11 [1] Github (hadley/emo@02a5206) evaluate 0.14 2019-05-28 [1] CRAN (R 3.6.0) forcats * 0.4.0 2019-02-17 [1] CRAN (R 3.6.0) fs 1.3.1 2019-05-06 [1] CRAN (R 3.6.0) generics 0.0.2 2018-11-29 [1] CRAN (R 3.6.0) ggplot2 * 3.2.1 2019-08-10 [1] CRAN (R 3.6.0) glue 1.3.1 2019-03-12 [1] CRAN (R 3.6.0) gtable 0.3.0 2019-03-25 [1] CRAN (R 3.6.0) haven 2.1.1 2019-07-04 [1] CRAN (R 3.6.0) hms 0.5.2 2019-10-30 [1] CRAN (R 3.6.0) htmltools 0.4.0 2019-10-04 [1] CRAN (R 3.6.0) httr 1.4.1 2019-08-05 [1] CRAN (R 3.6.0) icon 0.1.0 2019-11-07 [1] Github (emitanaka/icon@8458546) jsonlite 1.6 2018-12-07 [1] CRAN (R 3.6.0) knitr 1.25 2019-09-18 [1] CRAN (R 3.6.0) lattice 0.20-38 2018-11-04 [1] CRAN (R 3.6.1) lazyeval 0.2.2 2019-03-15 [1] CRAN (R 3.6.0) lifecycle 0.1.0 2019-08-01 [1] CRAN (R 3.6.0) lubridate 1.7.4 2018-04-11 [1] CRAN (R 3.6.0) magrittr 1.5 2014-11-22 [1] CRAN (R 3.6.0) Matrix 1.2-17 2019-03-22 [1] CRAN (R 3.6.1) memoise 1.1.0 2017-04-21 [1] CRAN (R 3.6.0) modelr 0.1.5 2019-08-08 [1] CRAN (R 3.6.0) munsell 0.5.0 2018-06-12 [1] CRAN (R 3.6.0) nlme 3.1-140 2019-05-12 [1] CRAN (R 3.6.1) pillar 1.4.2 2019-06-29 [1] CRAN (R 3.6.0) pkgbuild 1.0.6 2019-10-09 [1] CRAN (R 3.6.0) pkgconfig 2.0.3 2019-09-22 [1] CRAN (R 3.6.0) pkgload 1.0.2 2018-10-29 [1] CRAN (R 3.6.0) prettyunits 1.0.2 2015-07-13 [1] CRAN (R 3.6.0) processx 3.4.1 2019-07-18 [1] CRAN (R 3.6.0) ps 1.3.0 2018-12-21 [1] CRAN (R 3.6.0) purrr * 0.3.3 2019-10-18 [1] CRAN (R 3.6.0) R6 2.4.0 2019-02-14 [1] CRAN (R 3.6.0) Rcpp 1.0.2 2019-07-25 [1] CRAN (R 3.6.0) readr * 1.3.1 2018-12-21 [1] CRAN (R 3.6.0) readxl 1.3.1 2019-03-13 [1] CRAN (R 3.6.0) remotes 2.1.0 2019-06-24 [1] CRAN (R 3.6.0) reticulate 1.13 2019-07-24 [1] CRAN (R 3.6.0) rlang 0.4.1 2019-10-24 [1] CRAN (R 3.6.0) rmarkdown 1.16 2019-10-01 [1] CRAN (R 3.6.0) rprojroot 1.3-2 2018-01-03 [1] CRAN (R 3.6.0) rstudioapi 0.10 2019-03-19 [1] CRAN (R 3.6.0) rvest 0.3.4 2019-05-15 [1] CRAN (R 3.6.0) scales 1.0.0 2018-08-09 [1] CRAN (R 3.6.0) sessioninfo 1.1.1 2018-11-05 [1] CRAN (R 3.6.0) stringi 1.4.3 2019-03-12 [1] CRAN (R 3.6.0) stringr * 1.4.0 2019-02-10 [1] CRAN (R 3.6.0) testthat 2.2.1 2019-07-25 [1] CRAN (R 3.6.0) tibble * 2.1.3 2019-06-06 [1] CRAN (R 3.6.0) tidyr * 1.0.0 2019-09-11 [1] CRAN (R 3.6.0) tidyselect 0.2.5 2018-10-11 [1] CRAN (R 3.6.0) tidyverse * 1.2.1 2017-11-14 [1] CRAN (R 3.6.0) usethis 1.5.1 2019-07-04 [1] CRAN (R 3.6.0) vctrs 0.2.0 2019-07-05 [1] CRAN (R 3.6.0) whisker 0.4 2019-08-28 [1] CRAN (R 3.6.0) withr 2.1.2 2018-03-15 [1] CRAN (R 3.6.0) xaringan 0.13 2019-10-30 [1] CRAN (R 3.6.0) xfun 0.10 2019-10-01 [1] CRAN (R 3.6.0) xml2 1.2.2 2019-08-09 [1] CRAN (R 3.6.0) yaml 2.2.0 2018-07-25 [1] CRAN (R 3.6.0) zeallot 0.1.0 2018-01-28 [1] CRAN (R 3.6.0) [1] /Library/Frameworks/R.framework/Versions/3.6/Resources/library ``` <p></p> ::: These slides are licensed under <br><center><a href="https://creativecommons.org/licenses/by-sa/3.0/au/"><img src="images/cc.svg" style="height:2em;"/><img src="images/by.svg" style="height:2em;"/><img src="images/sa.svg" style="height:2em;"/></a></center>