---
title: "Initial setup"
author: "Jonathan Harrington"
date: "WiSe 2021"
output: 
  bookdown::html_document2:
    number_sections: TRUE
    toc: true
    theme: flatly
    highlight: pygments
---

<style>
div.gray {background-color: #e8e8e8; border-radius: 5px; padding: 20px;}
body {font-size: 16pt;}
h1 {font-size: 24pt;}
h2 {font-size: 22pt;}
p.caption {font-size: 12pt; text-align: justify;}
code.sourceCode {font-size: 16pt;}
</style>

# Required set up for the course on EmuR


- Download and install [The Software Package R](https://ftp.fau.de/cran/). The latest vesion is currently `4.1.x` ( September 2021).

- Also download and install [RStudio](https://rstudio.com/products/rstudio/download/#download) 


$~$


# Default browser
Set your default browser to Google Chrome. This is necessary in order to display the Emu web application from R.

![](img/setup0.png)



$~$




# Create a directory on your hard drive
Create a directory on your hard drive to be used on this course. Here I have created one on my desktop called emu2021 - but any directory name is fine.

![](img/setup1.png)


$~$



# Startup Rstudio
by clicking the Rstudio icon


$~$


# Create a project
Choose the directory that you just created under step 1. See the figure below:


![](img/setup2.png)
You only need to create the project once. When you startup Rstudio the next time, the system should automatically open up inside this project that you created. If not, or if you closed the project, you can open it again:

![](img/setup2b.png)

You can get back to your default directory (if you were using R before then) any time by selecting close project in the above menu.

# Install packages
In the Rstudio console window, install the following following (takes a few minutes). *You only need to do this once*:  

```{r, eval = F}
install.packages(c("Rcpp", "remotes", "knitr", 
                   "tidyverse", "magrittr",
                   "rmarkdown", "emuR", "gridExtra", "emmeans", 
                   "broom", "lmerTest", "pbkrtest", "MuMIn", "wrassp"))
```

<div class="gray">
**More information: Installation of R Packets**

Should the above result in the error message `installation of package had non-zero exit status`, then it means that installation has failed. For Windows, you might then additionally have to install  [Rtools](https://cran.r-project.org/bin/windows/Rtools/). Für MacOS you might need to install/reset the *XCode command-line tools*. For this purpose, open a Mac terminal window and execute the following:

```{bash, eval = F}
xcode-select --install
# Should the R packages installation still not work:
xcode-select --reset
```

</div>

# loading libraries
Load the `tidyverse()`, `emuR()`, and `wrassp()` libraries. 
While some base packages are automatically opened when you start up Rstudio, most have to be loaded first using the  `library()` function. This includes the two packages that will be needed right from the beginning of the course:

```{r, eval = F}
library(tidyverse)
library(emuR)
library(wrassp)
```

# Verification
Verify that everything works by entering the following commands to the console.


```{r, eval=F}
# download a demo database
create_emuRdemoData(dir = tempdir())
# load it
ae = load_emuDB(file.path(tempdir(), "emuR_demoData", "ae_emuDB"))
# look at it
serve(ae, useViewer=F)
# close the browser window to carry on
```

The third command `serve(ae, useViewer=F)` should produce the following image in your browser

![](img/setup3.png)

# Quitting from Rstudio (and R)
Either  `Session > Quit Session` in the main Rstudio toolbar or 
```{r, eval=F}
q()
```

You will then be asked whether you want to save the *workspace image*. 

**For this course, please never save the workspace i.e. (`Don't save`)**

# Learning R
A basic knowledge in R is a prerequisite for this course. If you are unfamiliar with R then please start by working through these two sources:

-  [A short introduction to R by Raphael Winkelmann (in English)](https://www.phonetik.uni-muenchen.de/~jmh/lehre/sem/ws2122/WP_4.1/IntroR.html)


- [A more detailed introduction to R and tidyverse by Johanna Cronenberg (in German)](https://www.phonetik.uni-muenchen.de/~jmh/lehre/sem/ws2122/Rintro.htm)


# Learning R: the community

There is a very large and helpful R community that will make learning R easier for you. Here are a few useful links and commands in case you get stuck:

- [Stack Overflow](https://stackoverflow.com/questions/tagged/r): A blog where you can often find an answer to your questions about R. The easiest way is to google your question in English; a stack overflow member's answer will be included in the first search results.

- [Hadley Wickham's "R for Data Science"](https://r4ds.had.co.nz/): 
Hadley Wickham is the chief programmer of "tidyverse". His books are very readable, well structured, and entertaining.

- Chatsheets: those are pdfs that provide an overview of functions with explanations and examples in a very compact form. You will find some cheatsheets in the main toolbar via`Help > Cheatsheets`. The first three are especially useful. You can also find cheatsheets by googling see e.g. [Data Transformation with dplyr](https://raw.githubusercontent.com/rstudio/cheatsheets/master/data-transformation.pdf) or this very comprehensive [Reference Card](https://cran.r-project.org/doc/contrib/Short-refcard.pdf).

- Vignettes: For some packages there are so-called "vignettes", which are mostly HTMLs or PDFs that have been written by the package's authors. You can search for vignettes using the following input to the console:

```{r, eval = F}
# for e.g. one of the libraries from tidyverse
vignette("dplyr")
```

- You can get information about a function by entering its name in the RStudio `Help` toolbar. You'll then get information about the function's arguments and often some examples. You can also get help via the console, as follows ( e.g. here for `getwd()`): 


```{r, eval = F}
?getwd
help("getwd")
```


`ggplot2` is both a well-known and popular program for creating plots. There's plenty of help available for `ggplot2` from the R community. Here are some useful links for creating graphics:

- The chapter [Data Visualisation](https://r4ds.had.co.nz/data-visualisation.html) in Hadley Wickham's "R for Data Science"

- [Cookbook for R](http://www.cookbook-r.com/Graphs/)

- [Cheatsheet ggplot2](https://rstudio.com/wp-content/uploads/2015/03/ggplot2-cheatsheet.pdf)

- [Stack Overflow](https://stackoverflow.com/questions/tagged/ggplot2?sort=faq)

# Statistics in R: Literature

If you need more information using statistics in R, the following are recommended:

- Bodo Winter's "Statistics for Linguists: An Introduction using R": A recent book with excellent explanations to all major themes in inferential statistics. It's available online via the LMU library.

- Stefan Gries' "Statistics for Linguistics with R: A Practical Introduction": Useful for decision makng about which model to use for which type of question. Although the code is a bit of data (given that the book was published in 2009) the statistical content is still up-to-date. Also online via the LMU library.

- Harald Baayen's "Analyzing Linguistic Data: A Practical Introduction to Statistics": Einführung für eher Fortgeschrittene. Although the R code is a bit out of data, the explanations and examples of statistics foundations are very helpful. Available as a hard copy from the LMU library.

