Reports riproducibili in HTML

Ambra Perugini

Getting started (YAML)

---
title: "Report analisi"
author: "Nome Cognome"
date: "2025-11-28"
bibliography: bibliography.bib
output: html_document
embed-resources: true
---

Parametri YAML

  • toc: true (table of content)

  • toc-title: Contents

  • toc-location: left

  • number-sections: true

  • embed-resources: true (per essere un html autonomo fuori dalla cartella)

  • execute: e si possono specificare per tutti i chunk dei settings di default

  • cache: ture (salva gli output dei chunk in un file per compilare più velocemente)

  • results: hide (nasconde l’output di un chunk, può essere settato anche a ‘markup’ per farli vedere in maniera ordinata)

  • echo: false (di default non fa vedere il codice dei chunk)

  • code-fold: true (per far vedere il codice cliccando su code)

es:

---
title: "my html"
  format:
    html:
      toc: true
      toc-title: Contents
      toc-location: left
      number-sections: true
      embed-resources: true
execute:
  cache: true
  results: hide
  echo: false
---

Chunks

Esempi in chunk r

```{r}

#| results: hide

#| echo: false

#| label: fig-nome_figura

#| fig-width: 8

#| fig-height: 4

#| fig-cap: Caption della vostra figura.

```

Colonne

Contenuto 1:

  • Punto 1

  • Punto 2

  • Punto 3

Contenuto 2:

  • Punto 1

  • Punto 2

  • Punto 3

:::: {.columns}

::: {.column width="50%"}


:::

::: {.column width="50%"}


:::

::::

Testo colorato e immagini

Io amo Quarto!

Io <span style="color:red;">amo</span> Quarto!

Avete visto varie immagini, ecco come le inserisco:

![](figures/magic.png){fig-align="center"}

Aggiungere citazioni (pt.1)

Questo articolo mi piace molto ed è stato scritto da Scheel et al. (2021), (Scheel et al., 2021).

@scheel2021hypothesis per cit. nel testo
[@scheel2021hypothesis] per cit. tra parentesi

Le references vengono poi in automatico messe per esteso alla fine del fine. Per creare un file .bib, aprire un nuovo file di testo e salvarlo con l’estensione .bib. Importante inserire nello YAML la voce:

bibliography: "nome del file"

csl: "apa.csl"

Aggiungere citazioni (pt.2)

Il file csl (Citation Style Language) che trovate in cartella vi permette di formattare correttamente in stile apa le citazioni

Valori nel testo presi da oggetti r

library(readxl)
DATA <- read_xls(path = "data/Sara_dataset.xls")

cor_pre <- cor(DATA$anx_pre, DATA$mathquiz, use = "complete.obs")


cor_pre
[1] -0.05491077

Elenco delle correlazioni:

  • correlazione tra Ansia pre e math quiz -> \(r =\) -0.0549108
- correlazione tra Ansia pre e math quiz -> $r =$ `\r cor_pre\`
  • -0.0549108
- -0.0549108

Pannelli (visual)

library(criticalESvalue)
library(psych)
library(psychTools)
data("holzinger.swineford")
Holz <- holzinger.swineford
tt <- t.test(Holz$t01_visperc [ Holz$female == 1], Holz$t01_visperc [ Holz$female == 2])
critical(tt)

    Welch Two Sample t-test

data:  Holz$t01_visperc[Holz$female == 1] and Holz$t01_visperc[Holz$female == 2]
t = 1.4095, df = 298.9, p-value = 0.1597
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -0.06419229  0.38823118
sample estimates:
mean of x mean of y 
 4.314090  4.152071 

|== Effect Size and Critical Value ==| 
d = 0.1623665 dc = ± 0.2269609 bc = ± 0.2262117 
g = 0.1619587 gc = ± 0.2263909 
m1 <- 10
m2 <- 15
sd1 <- 5
sd2 <- 4.25
n <- 30
critical_t2sp(m1 = m1, m2 = m2, sd1 = sd1, sd2 = sd2, n = n)
$dz
[1] -0.7619393

$dzc
[1] 0.3734061

$d
[1] -1.077545

$dc
[1] 0.528076

$bc
[1] 2.450367

$se
[1] 1.198089

$df
[1] 29

$g
[1] -1.049394

$gc
[1] 0.51428

$gz
[1] -0.7420336

$gzc
[1] 0.3636509

Pannelli (source)

::: panel-tabset
### From data (code)
#| echo: true
#| results: hide

library(criticalESvalue)
library(psych)
library(psychTools)
data("holzinger.swineford")
Holz <- holzinger.swineford
tt <- t.test(Holz$t01_visperc [ Holz$female == 1], Holz$t01_visperc [ Holz$female == 2])
critical(tt)
### From data (output)
#| echo: false
#| results: markup

library(criticalESvalue)
library(psych)
library(psychTools)
data("holzinger.swineford")
Holz <- holzinger.swineford
tt <- t.test(Holz$t01_visperc [ Holz$female == 1], Holz$t01_visperc [ Holz$female == 2])
critical(tt)
### From sample size (code)
#| echo: true
#| results: hide

m1 <- 10
m2 <- 15
sd1 <- 5
sd2 <- 4.25
n <- 30
critical_t2sp(m1 = m1, m2 = m2, sd1 = sd1, sd2 = sd2, n = n)
### From sample size (output)
#| echo: false
#| results: markup

m1 <- 10
m2 <- 15
sd1 <- 5
sd2 <- 4.25
n <- 30
critical_t2sp(m1 = m1, m2 = m2, sd1 = sd1, sd2 = sd2, n = n)
:::

Esercizio

  • Scaricate il dataset “Sara_dataset.xlsx”
  • Descrivete le variabili con statistiche descrittive
  • Analizzate come meglio credete 2 delle variabili
  • inserire una sezione con due colonne
  • inserire una parola di colore diverso
  • inserire un’immagine
  • inserire delle citazioni tramite il file .bib
  • scrivete un piccolo paragrafo di conclusione in cui riassumete il lavoro fatto

Extra:

  • richiamare nel testo oggetti dell’environment di r
  • creare un immagine con i dati
  • aggiungere fig-cap
  • aggiungere lable
  • opzionale: sistemare dimensione immagine nel chunk

Sara_dataset Variabili

  • genere dei soggetti (gender: 1 = femmine, 2 = maschi)
  • tipo di laurea triennale conseguita (major: 1 = psicologia, 2 = medicina, 3 = biologia, 4 = sociologia, 5 = economia)
  • condizione sperimentale (cond: 1 = facile, …, 4 = impossibile)
  • autovalutazione del timore verso la matematica (phobia) su scala 0-10
  • numero corsi di matematica frequentati (prevmath)
  • punteggio ad un pre-test di matematica (mathquiz)
  • punteggio ad un test di statistica (statquiz)
  • auto-misurazione del battito cardiaco in condizioni normali (hr base), prima del test (hr pre) e dopo il test (hr post)
  • punteggi ad un test sull’ansia in condizioni normali (anx base), prima del test (anx pre) e dopo il test (anx post)

CSS (extra)

Cos’è un file CSS?

  • CSS (Cascading Style Sheets) è un linguaggio usato la formattazione di un documento scritto in HTML (utilizzabile anche per revealjs).

  • I file CSS hanno estensione .css e contengono regole di stile applicabili agli elementi HTML.

  • Permette di separare il contenuto dalla presentazione dalle parti di formattazione, migliorando la manutenibilità del codice.

Come inserirlo nel file quarto:

format:
  html:
    css: stile.css

Esempio illustrativo

Il file .css è come un foglio di testo dove inserire i parametri di formattazione del vostro file html. Un brevissimo esempio:

body {
  font-family: Arial, sans-serif;
  background-color: #f4f4f4;
}
h1 {
  color: darkred;
  text-align: center;
}

CSS direttamente in Quarto

References

Scheel, A. M., Tiokhin, L., Isager, P. M., & Lakens, D. (2021). Why hypothesis testers should spend less time testing hypotheses. Perspectives on Psychological Science, 16(4), 744–755.