---
title: "your_title_goes_here"
author: "your_name_goes_here"
date: "`r Sys.Date()`"
format:
  html:
    self-contained: true
knitr:
  opts_chunk:      ########## set global options ############
    collapse: true # keep code from blocks together (if shown)
    echo: false    # don't show code
    message: true  # show messages
    warning: true  # show warnings
    error: true    # show error messages
    comment: ""    # don't show ## with printed output
    R.options:    
      digits: 3    # round to three digits
editor: visual
bibliography: [references.bib, packages.bib]
csl: the-new-england-journal-of-medicine.csl
---

```{r tidyverse-tidymodels, echo=FALSE}
library(conflicted)
suppressPackageStartupMessages(library(tidymodels))
tidymodels_prefer()
suppressPackageStartupMessages(library(tidyverse))

# suppress "`summarise()` has grouped output by " messages
options(dplyr.summarise.inform = FALSE)
```

```{r other-packages}
library(glue)  # for glue()
library(rUM)  # needed for the bibliography
library(rio)  # for import() 
library(table1)  # for table1()

# gtsummary for tbl_summary(), add_n(), add_p(), modify_header(), bold_labels()
suppressPackageStartupMessages(library(gtsummary)) 
```

```{r load-data}
# raw_data <- import("")  # your data file goes inside the ""
```

```{r analysis-1}
# preprocess your data and ultimately make a dataset called analysis
analysis <- mtcars |> 
  mutate(auto_man = if_else(am == 0, "Automatic", "Manual")) |> 
  select(mpg, auto_man)
```

# Abstract

# Introduction

# Methods

Analyses were conducted with `r stringr::word(R.Version()$version.string, 1, 3)` with the `tidyverse` (`r packageVersion("tidyverse")`), `rUM` (`r packageVersion("rUM")`), `gtsummary` (`r packageVersion("gtsummary")`) packages used to preprocess and summarize data. [@R-base; @R-tidyverse; @tidyverse2019; @R-rUM; @R-gtsummary]

# Results

```{r}
#| label: tbl-table1
#| tbl-cap: "Cross references to tables use labels for the code chunk starting with tbl-."

# The table1::table1 does quick pretty descriptive tables but they don't support
#   hyperlinks/cross-references in the paper
#
# analysis |> 
#  select(everything()) |> # choose your variables here
#  table1(
#    # change auto_man to the name of your column variable or delete | auto_man
#    ~ . | auto_man, 
#    data = _
#  ) 

analysis |> 
  tbl_summary(
    include = c(everything()), # choose your variables here
    # change auto_man to the name of your column variable or delete by = auto_man
    by = auto_man, # split table by group
    missing = "no" # don't list missing data separately
  ) %>%
  # add_n() %>% # add column with total number of non-missing observations
  # add_p() %>% # test for a difference between groups
  modify_header(label = "") %>% # update the column header to be blank
  bold_labels()
```

As can be seen in @tbl-table1 ....

```{r}
#| label: fig-figure-1
#| fig-cap: "Remember figure labels begin with fig-"

analysis |> 
  ggplot(aes(x=mpg)) + 
  geom_histogram(bins = 5) + 
  facet_wrap(vars(auto_man), ncol = 1)
```

As can be seen in @fig-figure-1 ...

# Discussion

# References {.unnumbered}

```{r}
#| include: false

# automatically create a bib database for loaded R packages & rUM
knitr::write_bib(
  c(
    .packages(),
    "rUM"
  ),
  "packages.bib"
)
```
