Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
NotificationsYou must be signed in to change notification settings

sofpn/rprimer

Repository files navigation

R-CMD-check

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

Installation

To install rprimer fromBioconductor,start R (version 4.2) and enter:

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

Attach the package by calling:

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 userinterface). To start the application, typerunRprimerApp() from withinR upon installing and attaching the package.

The application can also be found online,here.

Workflow

Import alignment

The first step is to import an alignment with target sequences ofinterest. This is done by usingreadDNAMultipleAlignment().

The file “example_alignment.txt” contains an alignment of 50 hepatitisE virus sequences.

infile<- system.file("extdata","example_alignment.txt",package="rprimer")myAlignment<- readDNAMultipleAlignment(infile,format="fasta")

Step 1:consensusProfile

consensusProfile() takes aDNAMultipleAlignment as input and returnsall the information needed for the subsequent design process.

myConsensusProfile<- consensusProfile(myAlignment,ambiguityThreshold=0.05)

Results (row 100-106):

positionacgtothergapsmajorityidentityiupaccoverage
1000.001.000.000.000.000C1.00C1.00
1011.000.000.000.000.000A1.00A1.00
1020.160.000.840.000.000G0.84R1.00
1030.000.001.000.000.000G1.00G1.00
1040.000.980.000.000.020C1.00C1.00
1050.200.000.020.780.000T0.78W0.98
1060.000.001.000.000.000G1.00G1.00

The results can be visualized withplotData():

plotData(myConsensusProfile)

Step 2:designOligos

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

myOligos<- designOligos(myConsensusProfile)

Results (first six rows):

typefwdrevstartendlengthiupacSequenceiupacSequenceRcidentitycoveragedegeneracygcContentMeangcContentRangetmMeantmRangedeltaGMeandeltaGRangesequencesequenceRcgcContenttmdeltaGmethodscoreroiStartroiEnd
probeTRUETRUE12414320TCYGCCYTGGCGAATGCTGTACAGCATTCGCCARGGCRGA0.950.9940.600.1063.174.33-21.612.08TCCGCCCT….ACAGCATT….0.65, 0…..65.33623….-22.6538….ambiguous217597
probeFALSETRUE12714620GCCYTGGCGAATGCTGTGGTACCACAGCATTCGCCARGGC0.980.9920.620.0563.181.84-21.730.83GCCCTGGC….ACCACAGC….0.65, 0.664.10586….-22.1475….ambiguous317597
primerTRUEFALSE12814619CCYTGGCGAATGCTGTGGTACCACAGCATTCGCCARGG0.970.9920.610.0561.481.95-19.840.83CCCTGGCG….ACCACAGC….0.631578….62.45335….-20.2570….ambiguous317597
primerTRUEFALSE12814720CCYTGGCGAATGCTGTGGTRYACCACAGCATTCGCCARGG0.960.9940.600.1061.613.37-20.551.76CCCTGGCG….TACCACAG….0.6, 0.5….61.77166….-20.5089….ambiguous217597
probeTRUETRUE12814619CCYTGGCGAATGCTGTGGTACCACAGCATTCGCCARGG0.970.9920.610.0560.451.94-19.840.83CCCTGGCG….ACCACAGC….0.631578….61.41686….-20.2570….ambiguous317597
probeTRUETRUE12814720CCYTGGCGAATGCTGTGGTRYACCACAGCATTCGCCARGG0.960.9940.600.1060.633.37-20.551.76CCCTGGCG….TACCACAG….0.6, 0.5….60.78676….-20.5089….ambiguous217597

The results can be visualized as a dashboard, usingplotData():

plotData(myOligos)

Step 3:designAssays

designAssays() finds pairs of forward and reverse primers and combinethem with probes, if probes are present in the input dataset. You caneither use the default settings as below, or adjust the designconstraints (see the package vignette or?designAssays for moreinformation).

myAssays<- designAssays(myOligos)

Results (first six rows):

startendlengthtotalDegeneracyscorestartFwdendFwdlengthFwdiupacSequenceFwdidentityFwdcoverageFwddegeneracyFwdgcContentMeanFwdgcContentRangeFwdtmMeanFwdtmRangeFwddeltaGMeanFwddeltaGRangeFwdsequenceFwdgcContentFwdtmFwddeltaGFwdmethodFwdstartRevendRevlengthReviupacSequenceRevidentityRevcoverageRevdegeneracyRevgcContentMeanRevgcContentRangeRevtmMeanRevtmRangeRevdeltaGMeanRevdeltaGRangeRevsequenceRevgcContentRevtmRevdeltaGRevmethodRevplusPrminusPrstartPrendPrlengthPriupacSequencePriupacSequenceRcPridentityPrcoveragePrdegeneracyPrgcContentMeanPrgcContentRangePrtmMeanPrtmRangePrdeltaGMeanPrdeltaGRangePrsequencePrsequenceRcPrgcContentPrtmPrdeltaGPrmethodPrroiStartroiEnd
560556736962.005605562420GGCRGTGGTTTCTGGGGTGA0.98120.620.0562.842.51-20.861.25GGCAGTGG….0.6, 0.6561.57995….-20.2350….ambiguous5654567320GTTGGTTGGATGAASATAGG1120.4050.711.1-15.270.52GTTGGTTG….0.4, 0.450.15469….-15.0078….ambiguousTRUEFALSE5625564218CMGGGTTGATTCTCAGCCGGCTGAGAATCAACCCKG0.970.9920.580.0655.142.79-17.061.25CAGGGTTG….GGCTGAGA….0.555555….53.74554….-16.4324….ambiguous17597
560556736962.335605562420GGCRGTGGTTTCTGGGGTGA0.98120.620.0562.842.51-20.861.25GGCAGTGG….0.6, 0.6561.57995….-20.2350….ambiguous5654567320GTTGGTTGGATGAASATAGG1120.4050.711.1-15.270.52GTTGGTTG….0.4, 0.450.15469….-15.0078….ambiguousTRUEFALSE5625564319CMGGGTTGATTCTCAGCCCGGGCTGAGAATCAACCCKG0.970.9920.610.0557.632.64-18.541.25CAGGGTTG….GGGCTGAG….0.578947….56.30713….-17.9185….ambiguous17597
560556736962.005605562420GGCRGTGGTTTCTGGGGTGA0.98120.620.0562.842.51-20.861.25GGCAGTGG….0.6, 0.6561.57995….-20.2350….ambiguous5654567320GTTGGTTGGATGAASATAGG1120.4050.711.1-15.270.52GTTGGTTG….0.4, 0.450.15469….-15.0078….ambiguousTRUETRUE5625564420CMGGGTTGATTCTCAGCCCTAGGGCTGAGAATCAACCCKG0.971.0020.580.0558.872.55-19.431.25CAGGGTTG….AGGGCTGA….0.55, 0.657.59836….-18.8035….ambiguous17597
560556736961.675605562420GGCRGTGGTTTCTGGGGTGA0.98120.620.0562.842.51-20.861.25GGCAGTGG….0.6, 0.6561.57995….-20.2350….ambiguous5654567320GTTGGTTGGATGAASATAGG1120.4050.711.1-15.270.52GTTGGTTG….0.4, 0.450.15469….-15.0078….ambiguousTRUETRUE5625564521CMGGGTTGATTCTCAGCCCTTAAGGGCTGAGAATCAACCCKG0.981.0020.550.0559.212.43-20.081.25CAGGGTTG….AAGGGCTG….0.523809….57.99472….-19.4553….ambiguous17597
560556736962.005605562420GGCRGTGGTTTCTGGGGTGA0.98120.620.0562.842.51-20.861.25GGCAGTGG….0.6, 0.6561.57995….-20.2350….ambiguous5654567320GTTGGTTGGATGAASATAGG1120.4050.711.1-15.270.52GTTGGTTG….0.4, 0.450.15469….-15.0078….ambiguousTRUEFALSE5625564622CMGGGTTGATTCTCAGCCCTTCGAAGGGCTGAGAATCAACCCKG0.980.9920.570.0559.912.28-21.111.25CAGGGTTG….GAAGGGCT….0.545454….58.77533….-20.4881….ambiguous17597
560556736962.005605562420GGCRGTGGTTTCTGGGGTGA0.98120.620.0562.842.51-20.861.25GGCAGTGG….0.6, 0.6561.57995….-20.2350….ambiguous5654567320GTTGGTTGGATGAASATAGG1120.4050.711.1-15.270.52GTTGGTTG….0.4, 0.450.15469….-15.0078….ambiguousTRUEFALSE5626564318MGGGTTGATTCTCAGCCCGGGCTGAGAATCAACCCK0.970.9920.580.0655.711.65-17.210.94AGGGTTGA….GGGCTGAG….0.555555….54.88806….-16.7409….ambiguous17597

The assays can be visualized usingplotData():

plotData(myAssays)

Additional step:checkMatch

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

## Randomly select six oligos to illustrate an exampleselection<- sample(seq_len(nrow(myOligos)),size=6)matchTableOligos<- checkMatch(myOligos[selection, ],target=myAlignment)

Results:

iupacSequenceperfectMatchidPerfectMatchoneMismatchidOneMismatchtwoMismatchesidTwoMismatchesthreeMismatchesidThreeMismatchesfourOrMoreMismatchesidFourOrMoreMismatchesoffTargetMatchidOffTargetMatch
ACMGGGTTGATTCTCAGCCCTT0.90AB073912….0.10AB481228….0.000.0000
CCYTGGCGAATGCTGTGGT0.90AB073912….0.08KJ701409….0.000.02KJ013415.100
GGGGTGACMGGGTTGATTCTCA0.90AB073912….0.08BD378055….0.02JQ953665.10.0000
TCTGGGGTGACMGGGTTGA0.92AB073912….0.06BD378055….0.02JQ953665.10.0000
TGACMGGGTTGATTCTCAG0.90AB073912….0.10AB481228….0.000.0000
GGTGACMGGGTTGATTCT0.90AB073912….0.08BD378055….0.02JQ953665.10.0000

The match table can be visualized usingplotData():

plotData(matchTableOligos)

More information

Please see thepackagevignettefor more information on how to use the package.

Citation

Persson S., Larsson C., Simonsson M., Ellström P. (2022) rprimer: anR/bioconductor package for design of degenerate oligos for sequencevariable viruses.BMC Bioinformatics23:239

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors4

  •  
  •  
  •  
  •  

Languages


[8]ページ先頭

©2009-2025 Movatter.jp