A dockerfile to create an image of the R environment required to run the 'pain-threshold' data analysis scripts (kamermanpr/pain-threshold).
The image is built using the rocker/verse image of base R v3.5.1, and includes RStudio server, the TinyTex Latex distribution, the tidyverse suite of R packages (with dependencies), and several R packages (with dependencies) that are required to run the markdown scripts in pain-threshold. CRAN packages were installed from MRAN using the lasted package releases at the time the image was generated.
- OS:
- Debian:stretch
- R:
- v3.5.1
- RStudio server:
- v1.1.456
- GitHub packages:
- patchwork
- MRAN packages:
- boot
- car
- knitr
- magrittr
- readxl
- skimr
- LaTex:
- TinyTex
You need to have Docker installed on your computer. To do so, go to docker.com and follow the instructions for downloading and installing Docker for your operating system. Once Docker has been installed, follow the steps below, noting that Docker commands are entered in a terminal window (Linux and OSX/macOS) or command prompt window (Windows). Windows users also may wish to install GNU Make (required for the make
method of running the scripts) and Git version control software (not essential).
Enter: docker pull kamermanpr/docker-pain-threshold:v1.0.0
Enter: docker run -d -p 8787:8787 -v </PATH>:/home/rstudio --name threshold -e USER=pain -e PASSWORD=threshold kamermanpr/docker-pain-threshold:v1.0.0
Where </PATH>
refers to the path to the SPARS directory on your computer, which you either cloned from GitHub (kamermanpr/pain-threshold, git clone https://github.com/kamermanpr/pain-threshold
), or downloaded and extracted from figshare (DOI: 10.6084/m9.figshare.???????).
If you use git you can preconfigure the docker image with your git credentials: docker run -d -p 8787:8787 -v </PATH>:/home/rstudio --name threshold -e USER=pain -e PASSWORD=threshold -e GIT_USER="<your name" -e GIT_EMAIL="<your email address>" kamermanpr/docker-pain-threshold:v1.0.0
-
Open a web browser window and navigate to:
localhost:8787
-
Use the following login credentials:
- Username: pain
- Password: threshold
The pain-threshold directory comes with the outputs for all the analysis scripts in the /outputs directory (html and md formats). However, should you wish to run the scripts yourself, there are several preparatory steps that are required:
-
Acquire the data. The data required to run the scripts have not been included in the repo because participants in the studies did not consent to public release of their data. However, the data are available on request from Peter Kamerman ([email protected]). Once the data have been obtained, the files should be copied into the /data subdirectory.
-
Clean the /outputs directory by entering
make clean
in the Terminal tab in RStudio.
To run all the scripts (including the data cleaning scripts), enter make all
in the Terminal tab in RStudio.
To run individual RMarkdown scripts (*.Rmd files)
-
Generate the cleaned data using one of the following methods:
- Enter
make data-cleaned/clean-SPARSA.rds
and thenmake data-cleaned/clean-SPARSB.rds
in the Terminal tab in RStudio. - Enter
source('clean-SPARSA.R')
and thensource('clean-SPARSB.R')
in the Console tab in RStudio. - Open the clean-SPARSA.R script through the File tab in RStudio, and then click the 'Source' button on the right of the Script console in RStudio for each script. Repeat for
clean-SPARSB.R
- Enter
-
Run the individual script by:
- Entering
make outputs/<NAME_OF_INPUT_FILE>.html
in the Terminal tab in RStudio, OR - Opening the relevant *.Rmd file through the File tab in RStudio, and then clicking the 'knit' button on the left of the Script console in RStudio.
- Entering
Once done, log out of RStudio Server and enter the following into a terminal to stop the Docker container: docker stop threshold
. If you then want to remove the container, enter: docker rm threshold
. If you also want to remove the Docker image you downloaded, enter: docker rmi kamermanpr/docker-pain-threshold:v1.0.0