## ----setup, include = FALSE---------------------------------------------------
knitr::opts_chunk$set(collapse = TRUE, comment = "#>", message = FALSE, warning = FALSE)

## ----install, eval = FALSE----------------------------------------------------
# if (!requireNamespace("BiocManager", quietly = TRUE)) {
#   install.packages("BiocManager")
# }
# BiocManager::install("prolfqua")

## ----install-dev, eval = FALSE------------------------------------------------
# BiocManager::install("fgcz/prolfqua")

## ----simulate-----------------------------------------------------------------
library(prolfqua)
istar <- sim_lfq_data_peptide_config(Nprot = 100, seed = 1234)
lfqdata <- LFQData$new(istar$data, istar$config)
lfqdata$factors() |> head()

## ----transform----------------------------------------------------------------
lfqdata <- lfqdata$get_Transformer()$log2()$robscale()$lfq
lfqprot <- lfqdata$get_Aggregator()$aggregate()

## ----density, fig.cap = "Distribution of the normalized protein intensities per sample."----
lfqprot$get_Plotter()$intensity_distribution_density()

## ----contrasts----------------------------------------------------------------
contrasts <- c(
  "A_vs_Ctrl" = "group_A - group_Ctrl",
  "B_vs_Ctrl" = "group_B - group_Ctrl"
)
fa <- build_contrast_analysis(lfqprot, "~ group_", contrasts, method = "limma")
res <- fa$get_contrasts()
head(res[, c("protein_Id", "contrast", "diff", "p.value", "FDR")])

## ----volcano, fig.cap = "Volcano plot of the two contrasts."------------------
fa$get_Plotter()$volcano()$FDR

## ----facades------------------------------------------------------------------
names(list_facades())

## ----session-info-------------------------------------------------------------
sessionInfo()

