Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (17.0%) to scientific vocabulary

Keywords from Contributors

bioconductor-package
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: sofpn
  • Language: R
  • Default Branch: master
  • Size: 16.1 MB
Statistics
  • Stars: 3
  • Watchers: 1
  • Forks: 1
  • Open Issues: 2
  • Releases: 0
Created almost 6 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Changelog

README.Rmd

---
output: github_document
---



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

# rprimer 


[![R-CMD-check](https://github.com/sofpn/rprimer/workflows/R-CMD-check/badge.svg)](https://github.com/sofpn/rprimer/actions)


rprimer is an R package that designs degenerate oligos and PCR assays from a multiple DNA sequence alignment of target sequences of interest. The package is specifically designed for sequence variable viruses. 

## Installation

To install rprimer from [Bioconductor](https://bioconductor.org/packages/devel/bioc/html/rprimer.html), start R (version 4.2 or later) and enter: 

  ``` r
if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("rprimer")
```

``` {r, message=FALSE, warn=FALSE, echo=FALSE}
devtools::load_all(".")
```

Attach the package by calling: 

```r
library(rprimer)
```

## Overview 

The package contains five main functions: 

* `consensusProfile()`
* `designOligos()` 
* `designAssays()`
* `checkMatch()`
* `plotData()`

## Shiny application

The package can be run through a Shiny application (a graphical user interface). To start the application, type `runRprimerApp()` from within R upon installing and attaching the package.

The application can also be found online, [here](https://sofpn.shinyapps.io/rprimer).

## Workflow 

### Import alignment

The first step is to import an alignment with target sequences of interest. This is done by using `readDNAMultipleAlignment()`.

The file "example_alignment.txt" contains an alignment of 50 hepatitis E virus sequences. 

```{r}
infile <- system.file("extdata", "example_alignment.txt", package = "rprimer")

myAlignment <- readDNAMultipleAlignment(infile, format = "fasta")
```

### Step 1: `consensusProfile` 

`consensusProfile()` takes a `DNAMultipleAlignment` as input and returns all the information needed for the subsequent design process.

```{r}
myConsensusProfile <- consensusProfile(myAlignment, ambiguityThreshold = 0.05)
```

Results (row 100-106):

```{r, echo=FALSE}
knitr::kable(myConsensusProfile[100:106, ], digits = 2)
```

The results can be visualized with `plotData()`:

```{r, fig.width=12, fig.height=6}
plotData(myConsensusProfile)
```

### Step 2: `designOligos`

The next step is to design oligos. You can either use the default settings as below, or adjust them as preferred (see the package vignette or `?designOligos` for more information). The default settings allow a maximum degeneracy of four, which means that only the most conserved regions of the genome will be considered as oligo binding sites. 

``` {r}
myOligos <- designOligos(myConsensusProfile)
```

Results (first six rows): 

```{r, echo=FALSE}
knitr::kable(head(myOligos), digits = 2)
```

The results can be visualized as a dashboard, using `plotData()`: 

```{r, fig.width=12, fig.height=8}
plotData(myOligos)
```

### Step 3: `designAssays`

`designAssays()` finds pairs of forward and reverse primers and combine them with probes, if probes are present in the input dataset. You can either use the default settings as below, or adjust the design constraints (see the package vignette or `?designAssays` for more information).

```{r}
myAssays <- designAssays(myOligos)
```

Results (first six rows):

```{r, echo=FALSE}
knitr::kable(head(myAssays), digits = 2)
```

The assays can be visualized using `plotData()`: 

```{r, fig.width=12, fig.height=6}
plotData(myAssays)
```

### Additional step: `checkMatch` 

`checkMatch()` shows the proportion and names of the target sequences in the input alignment that match with the generated oligos or assays. See the package vignette or `?checkMatch` for more information. 

```{r}
## Randomly select six oligos to illustrate an example 
selection <- sample(seq_len(nrow(myOligos)), size = 6)

matchTableOligos <- checkMatch(myOligos[selection, ], target = myAlignment)
```

Results:

```{r, echo=FALSE}
knitr::kable(matchTableOligos, digits = 2)
```

The match table can be visualized using `plotData()`: 

```{r, fig.width=12, fig.height=6}
plotData(matchTableOligos)
```

## More information

Please see the [package vignette](https://bioconductor.org/packages/devel/bioc/vignettes/rprimer/inst/doc/getting-started-with-rprimer.html) for more information on how to use the package. 

## Citation

Persson S., Larsson C., Simonsson M., Ellström P. (2022) rprimer: an R/bioconductor package for design of degenerate oligos for sequence variable viruses. [*BMC Bioinformatics* 23:239](https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-022-04781-0)

The publication describes version 1.1.0 of the package. 

Owner

  • Name: Sofia Persson
  • Login: sofpn
  • Kind: user
  • Location: Sweden
  • Company: Swedish Food Agency

GitHub Events

Total
  • Watch event: 1
Last Year
  • Watch event: 1

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 416
  • Total Committers: 5
  • Avg Commits per committer: 83.2
  • Development Distribution Score (DDS): 0.139
Past Year
  • Commits: 8
  • Committers: 1
  • Avg Commits per committer: 8.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
sofpn s****n@s****e 358
sofpn s****n@s****e 41
Sofia Persson 3****n 12
Peter Hickey p****y@g****m 3
Nitesh Turaga n****a@g****m 2
Committer Domains (Top 20 + Academic)
slv.se: 2

Issues and Pull Requests

Last synced: almost 2 years ago

All Time
  • Total issues: 4
  • Total pull requests: 3
  • Average time to close issues: 26 days
  • Average time to close pull requests: about 15 hours
  • Total issue authors: 3
  • Total pull request authors: 2
  • Average comments per issue: 1.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 2
  • Average time to close issues: 4 days
  • Average time to close pull requests: about 4 hours
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 1.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • Rohit-Satyam (1)
  • lucienalperstein (1)
  • fernando-aq (1)
Pull Request Authors
  • sofpn (5)
  • PeteHaitch (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • bioconductor 6,948 total
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 5
  • Total maintainers: 1
bioconductor.org: rprimer

Design Degenerate Oligos from a Multiple DNA Sequence Alignment

  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 6,948 Total
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Forks count: 18.4%
Stargazers count: 21.8%
Average: 26.0%
Downloads: 89.7%
Maintainers (1)
Last synced: 11 months ago

Dependencies

.github/workflows/R-CMD-check.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/check-r-package v1 composite
  • r-lib/actions/setup-pandoc v1 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
DESCRIPTION cran
  • R >= 4.1 depends
  • Biostrings * imports
  • DT * imports
  • IRanges * imports
  • S4Vectors * imports
  • bslib * imports
  • ggplot2 * imports
  • mathjaxr * imports
  • methods * imports
  • patchwork * imports
  • reshape2 * imports
  • shiny * imports
  • shinyFeedback * imports
  • shinycssloaders * imports
  • BiocStyle * suggests
  • kableExtra * suggests
  • knitr * suggests
  • rmarkdown * suggests
  • testthat >= 3.0.0 suggests