-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathREADME.Rmd
More file actions
136 lines (82 loc) · 3.18 KB
/
README.Rmd
File metadata and controls
136 lines (82 loc) · 3.18 KB
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
---
output: github_document
---
<!-- README.md is generated from README.Rmd. Please edit that file -->
```{r, echo = FALSE, message = FALSE, warning = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "README-"
)
```
```{r, include = FALSE}
library(fertile)
library(tidyverse)
miceps <- system.file("extdata/project_miceps.zip", package = "fertile") %>%
sandbox()
```
[](https://travis-ci.org/baumer-lab/fertile)
[](https://codecov.io/gh/baumer-lab/fertile?branch=master)
[](https://lifecycle.r-lib.org/articles/stages.html#stable)
# fertile: creating optimal conditions for reproducibility <img src="man/figures/logo.png" align="right" height="139"/>
**Tools to make achieving R project reproducibility easy!**
## Why `fertile`?
- Addresses all different reproducibility aspects in one place
- Simple functions w/ minimal arguments
- Minimal prior knowledge required
- `R`-specific features
- Customizable to your needs
- Has educational features
## Sample Project
`miceps`: variable containing path to directory containing following project:
<img src="man/figures/sample-project.png" align="center" height="450"/>
## Easily Create Reproducibility Reports
```{r badges, eval = FALSE}
proj_badges(miceps)
```
<img src="man/figures/badges-1.png" align="center" height="700"/>
$~$
<img src="man/figures/badges-2.png" align="center" height="450"/>
## Run Reproducibility Checks
`fertile` contains 16 checks on different aspects of reproducibility:
<img src="man/figures/components-summary.png" align="center" height="450"/>
$~$
Run them individually or in customizable groupings, w/ `proj_check()`, `proj_check_some()`, or `proj_check_badge()`
```{r}
# Individual check
has_well_commented_code(miceps)
```
```{r}
# Combined checks
proj_check_badge(miceps, "documentation")
```
## Warnings For Potentially Non-Reproducible Commands
```{r, error = TRUE}
read_csv("/Users/audreybertin/Documents/fertile/project_miceps/mice.csv")
```
```{r, error = TRUE}
setwd(miceps)
```
Several data-reading functions built in to `fertile`'s warning system:
<img src="man/figures/shims-list.png" align="center" height="450"/>
$~$
Customize warning system by:
- Adding functions (`add_shim()`, `add_all_possible_shims()`)
```{r addshim, eval = FALSE}
# Add stats::write.ftable to the warning system
add_shim(func = "write.ftable", package = "stats")
```
- Editing functions (`edit_shims()`)
- Disabling warnings for user-added functions (`unload_shims()`)
- Enabling warnings for user-added functions (`load_shims()`) --- this is the *default* setting.
## Installation
You can install `fertile` from GitHub with:
```{r gh-installation, eval = FALSE}
# install.packages("remotes")
remotes::install_github("baumer-lab/fertile")
```
## Citation
```{r citation}
citation("fertile")
```
The `fertile` release at the time of publication for the above citation can be found here: <https://github.com/baumer-lab/fertile/releases/tag/v1.0>