Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ramiromagno/karlen

Real-Time PCR Data Sets by Karlen et al. (2007)
https://github.com/ramiromagno/karlen

qpcr r

Last synced: 21 days ago
JSON representation

Real-Time PCR Data Sets by Karlen et al. (2007)

Awesome Lists containing this project

README

        

---
output: github_document
---

```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```

# karlen

[![CRAN status](https://www.r-pkg.org/badges/version/karlen)](https://CRAN.R-project.org/package=karlen)
[![R-CMD-check](https://github.com/ramiromagno/karlen/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/ramiromagno/karlen/actions/workflows/R-CMD-check.yaml)

`{karlen}` provides real-time PCR data sets by Karlen et al. (2007) in tidy
format.

## Installation

``` r
install.packages("karlen")
```

## Data

The raw PCR amplification curve data by Karlen et al. (2007) is provided as one
single eponymously named data set: `karlen`. In the original publication each
data set pertaining one PCR plate is provided as a separate spreadsheet file.
The column `plate` in `karlen` distinguishes each data set.

The `karlen` data set comprises quantitative real-time PCRs for
four samples (S1 thru S4), for seven amplicons targeting seven genes: Cav1,
Ctfg, Eln, Fn1, Rpl27, Hspg2, Serpine1.

For each sample/target combination a dilution series was performed. One PCR
plate was used per amplicon, except for Rpl27 (L27) that was assayed twice
(plates L27_1 and L27_2). The `target` column indicates the mouse gene symbol
matching the targeted amplicon.

```{r}
library(ggplot2)
library(dplyr, warn.conflicts = FALSE)
library(karlen)

karlen |>
dplyr::distinct(plate, target, sample, sample_type) |>
print(n = Inf)

```

Two dilution series schemes were assayed:

1. Scheme 1 (Cav1, Eln, Hspg2, Serpine1): 1-fold, 10-fold, 50-fold, and 100-fold;
2. Scheme 2 (Ctgf, Rpl27, Fn1): 1-fold, 10-fold, 50-fold, 100-fold and 1000-fold (two replicates only).

```{r}
karlen |>
dplyr::filter(sample_type == "std") |>
dplyr::distinct(plate, target, dilution) |>
print(n = Inf)
```

Visualization of amplification curves (NTC curves are omitted):

```{r example, dev='png', dpi=400, fig.width=10, fig.height=15}
karlen |>
dplyr::filter(sample_type != "ntc") |>
ggplot(aes(x = cycle, y = fluor, group = well, col = as.factor(dilution))) +
geom_line(linewidth = 0.1) +
geom_point(size = 0.05) +
facet_grid(rows = vars(plate), cols = vars(sample), scales = "free_y") +
labs(color = "Fold dilution")
```

## References

Yann Karlen, Alan McNair, Sébastien Perseguers, Christian Mazza, and Nicolas
Mermod. _Statistical significance of quantitative PCR_. BMC Bioinformatics 8, 131
(2007). doi: [10.1186/1471-2105-8-131](https://doi.org/10.1186/1471-2105-8-131).