I have two R files.One R script called “execute” that executes a render function. Calls an R markdown file called “Generator.Rmd”. This R markdown does some calculations. Actually will create so many pdfs as the unique years in the df data frame.
R script
path = "/Users/.../"
library(tidyverse)
set.seed(123)
likert_levels <- c(
"1" = "Very Dissatisfied",
"2" = "Dissatisfied",
"3" = "Neutral",
"4" = "Satisfied",
"5" = "Very Satisfied")
df = data.frame(
year = sample(c(2023, 2022, 2020, 2018), 50, replace = TRUE),
A = sample(likert_levels, 50, replace = TRUE),
B = sample(likert_levels, 50, replace = TRUE),
C = sample(likert_levels, 50, replace = TRUE))%>%
mutate(across(everything(),as.factor))%>%
as_tibble()%>%
mutate(across(-year, ~ factor(.x, levels = likert_levels)))
for (i in unique(df$year)){
df_year = df%>%
dplyr::filter(year == i)
rmarkdown::render(
# 1. Search for your base report
input = paste0(path,"Generator.Rmd"),
# 2. Establish the format
output_format = "pdf_document",
# 3. Define the output file name
output_file = paste0(i, "_report.pdf"),
# 4. Define an output folder/directory
output_dir = path,
# 5. Integrate your parameters
params = list(year = i,
DFEmpRecords = df_year))}
R Markdown script
---
geometry: top=1cm , bottom= 2cm , left=0.5cm, right=0.5cm
header-includes:
- PassOptionsToPackage{dvipsnames,table}{xcolor}
- usepackage{xcolor}
- usepackage{graphicx}
- usepackage[nounderscore]{syntax}
- usepackage{multirow}
- usepackage{rotating}
- usepackage{array}
- usepackage{hyperref}
- usepackage{readarray}
- usepackage{float}
- usepackage{epstopdf}
classoption: table
output:
pdf_document: default
params:
year: 0
DFEmpRecords: 0
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
library(kableExtra)
library(tidyverse)
library(ggplot2)
library(ggstats)
```
```{r , echo=FALSE , warning=FALSE , message = FALSE ,fig.width=10, fig.height=9 , dpi= 600}
YEAR = params$year
DF = params$DFEmpRecords
```
```{r, echo=FALSE , warning=FALSE , message = FALSE ,fig.width=8, fig.height=9, dpi= 1200}
category = DF%>%
as_tibble()%>%
dplyr::select(A,B,C)%>%
dplyr::mutate(across(everything(), ~ case_when(
. == "1" ~ likert_levels["1"],
. == "2" ~ likert_levels["2"],
. == "3" ~ likert_levels["3"],
. == "4" ~ likert_levels["4"],
. == "5" ~ likert_levels["5"])))%>%
dplyr::mutate(across(everything(), ~ factor(.x, levels
=likert_levels)))%>%
as.data.frame()%>%
ggstats::gglikert()
category
```
I am receiving an error that relates to latex . Can someone tell what is wrong here ?
Error: LaTeX failed to compile /Users/…/_report.tex. See https://yihui.org/tinytex/r/#debugging for debugging tips.
Recognized by R Language Collective
3