View source: R/G4iM.Grinder.Funs.R
G4iMGrinder | R Documentation |
G4iM Grinder is a flexible search engine and characterization tool designed to detect and analyze sequences capable of forming G-quadruplexes (Potential Quadruplex Sequences, PQSs), i-Motifs (Potential i-Motif Sequences, PiMS), or other higher-order quadruplex-like structures in DNA or RNA. It provides multiple “methods” to search for these motifs, allowing extensive configurability. Users can tailor the search to match specific criteria and search within their results for known quadruplex-forming or non-quadruplex-forming sequences. The results include both raw findings and frequency-weighted summaries.
G4iMGrinder(
Name,
Sequence,
DNA = TRUE,
Complementary = TRUE,
RunComposition = "G",
BulgeSize = 1,
MaxIL = 3,
MaxRunSize = 5,
MinRunSize = 3,
MinNRuns = 4,
MaxNRuns = 0,
MaxPQSSize = 33,
MinPQSSize = 15,
MaxLoopSize = 10,
MinLoopSize = 0,
LoopSeq = c("G", "T", "A", "C"),
Method2 = TRUE,
Method3 = TRUE,
G4hunter = TRUE,
cGcC = FALSE,
PQSfinder = TRUE,
Bt = 14,
Pb = 17,
Fm = 3,
Em = 1,
Ts = 4,
Et = -19,
Is = -16,
Ei = 1,
Ls = 1,
ET = 1,
WeightParameters = c(0.5, 0.5, 0),
FreqWeight = 0,
KnownQuadruplex = TRUE,
KnownNOTQuadruplex = FALSE,
RunFormula = FALSE,
NCores = 1,
Verborrea = TRUE
)
Name |
|
Sequence |
|
DNA |
|
Complementary |
|
RunComposition |
|
BulgeSize |
|
MaxIL |
|
MaxRunSize |
|
MinRunSize |
|
MinNRuns |
|
MaxNRuns |
|
MaxPQSSize |
|
MinPQSSize |
|
MaxLoopSize |
|
MinLoopSize |
|
LoopSeq |
|
Method2 |
|
Method3 |
|
G4hunter |
|
cGcC |
|
PQSfinder |
|
Bt |
|
Pb |
|
Fm |
|
Em |
|
Ts |
|
Et |
|
Is |
|
Ei |
|
Ls |
|
ET |
|
WeightParameters |
|
FreqWeight |
|
KnownQuadruplex |
|
KnownNOTQuadruplex |
|
RunFormula |
|
NCores |
|
Verborrea |
|
A list
containing:
Configuration |
A |
FunTime |
A |
PQSM2a |
A |
PQSM2b |
A |
PQSM3a |
A |
PQSM3b |
A |
Integer. Start position in Sequence
(for M2A/M3A).
Integer. End position in Sequence
(for M2A/M3A).
Integer. Frequency of occurrence (for M2B/M3B).
Integer. Number of runs (e.g., G-runs in G-quadruplex).
Integer. Number of bulges or irregularities.
Numeric. Average run size.
Character. The identified motif sequence.
Integer. Total length of the identified structure.
Character. Indicates “+” (original) or “–” (complementary) strand, if Complementary = TRUE
.
Numeric. Score assigned by the G4Hunter algorithm (if G4hunter = TRUE
).
Numeric. Score from the PQSfinder adaptation (if PQSfinder = TRUE
).
Numeric. Score from the cGcC algorithm (if cGcC = TRUE
).
Numeric. Combined overall score, integrating all selected scoring methods plus frequency weighting.
Character. Known quadruplex-forming sequences detected, with counts. DNA hits have “*” after the count; RNA hits have “^”.
Character. Known non-quadruplex sequences detected, with counts. DNA hits have “*” after the count; RNA hits have “^”.
M1 stands for Method 1; M2 stands for Method 2; M3 stands for Method 3.
Efres Belmonte-Reche
Belmonte-Reche, E. and Morales, J. C. (2019). G4-iM Grinder: when size and frequency matter. G-Quadruplex, i-Motif and higher order structure search and analysis tool. NAR Genomics and Bioinformatics, 2. DOI: 10.1093/nargab/lqz005
https://academic.oup.com/nargab/article/2/1/lqz005/5576141
library(G4iMGrinder)
# Example: retrieve a DNA sequence and run basic G4 search
if (!require("seqinr")) {
install.packages("seqinr")
library(seqinr)
}
Name <- "LmajorESTs"
Sequence <- paste0(
read.fasta(
file = url("http://tritrypdb.org/common/downloads/release-36/Lmajor/fasta/TriTrypDB-36_Lmajor_ESTs.fasta"),
as.string = TRUE, legacy.mode = TRUE, seqonly = TRUE,
strip.desc = TRUE, seqtype = "DNA"
),
collapse = ""
)
# G-quadruplex search on DNA
resultDNA <- G4iMGrinder(Name = Name, Sequence = Sequence)
# G-quadruplex search on RNA (with cGcC scoring)
resultRNA <- G4iMGrinder(Name = Name, Sequence = Sequence, DNA = FALSE, cGcC = TRUE)
# i-Motif search in DNA
resultIMotif <- G4iMGrinder(Name = Name, Sequence = Sequence, RunComposition = "C")
# Customized search with bulge allowance and larger loop sizes ## More bulges and smaller G-runs (GG) increases significantly computation time
resultCustom <- G4iMGrinder(
Name = Name,
Sequence = Sequence,
BulgeSize = 2,
MaxLoopSize = 20,
MaxIL = 10
)
# Viewing results
View(resultDNA$PQSM2a) # M2A results
View(resultDNA$PQSM2b) # M2B results (with frequency weighting)
View(resultDNA$PQSM3a) # M3A results (unrestricted-size search)
View(resultDNA$PQSM3b) # M3B results (unrestricted-size with frequency weighting)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.