Does anyone know a way to extract the loop sequence from the miRNA hairpin. Basically I need to extract the part that is between the 3p- and 5p part of the hairpin.
Unconfigured Ad
Collapse
X
-
Here is another suggestion using R/Bioconductor. Good luck!
Code:require(rtracklayer) require(BSgenome.Hsapiens.UCSC.hg19) require(ShortRead) mirTrack = import('ftp://mirbase.org/pub/mirbase/20/genomes/hsa.gff3') # split into hairpin, 5arm and 3arm hp = mirTrack[mirTrack$type != "miRNA"] arm5 = mirTrack[grepl("-5p", mirTrack$Name)] arm3 = mirTrack[grepl("-3p", mirTrack$Name)] # make key for matching hairpin with arm5 and arm3 hp$arm5 = match(hp$ID, arm5$Derives_from) hp$arm3 = match(hp$ID, arm3$Derives_from) # discard hairpins lacking annotated 5p and 3p arms (loops not defined) hp = hp[!is.na(hp$arm3) & !is.na(hp$arm5)] # prepare hp$loopStart = 0 hp$loopEnd = 0 # miRNAs on pos and neg strand have to be parsed separately ## posStrand isPos = as.vector(strand(hp) =="+") hp$loopStart[isPos] = end(arm5[hp$arm5[isPos]]) hp$loopEnd[isPos] = start(arm3[hp$arm3[isPos]]) ## negStrand hp$loopEnd[!isPos] = start(arm5[hp$arm5[!isPos]]) hp$loopStart[!isPos] = end(arm3[hp$arm3[!isPos]]) # GRanges for miRNA loops loops = GRanges(seqnames = seqnames(hp), IRanges(hp$loopStart, hp$loopEnd),strand = strand(hp), MI = hp$ID, Name = hp$Name) # sanity check hist(width(loops)) # we don't want the first/last nt of bounding mature miRs loops = loops-1 loops$seq = getSeq(Hsapiens, loops) loops # export as fastaFile loopsFasta = loops$seq names(loopsFasta) = paste("loopSeq", loops$MI, loops$Name, sep = "_") writeFasta(loopsFasta, file = "mirbase20loops.fa")
Comment
-
Hi! Here is a suggestion using R/Bioconductor. Good luck
Code:require(rtracklayer) require(BSgenome.Hsapiens.UCSC.hg19) require(ShortRead) mirTrack = import('ftp://mirbase.org/pub/mirbase/20/genomes/hsa.gff3') # split into hairpin, 5arm and 3arm hp = mirTrack[mirTrack$type != "miRNA"] arm5 = mirTrack[grepl("-5p", mirTrack$Name)] arm3 = mirTrack[grepl("-3p", mirTrack$Name)] # make key for matching hairpin with arm5 and arm3 hp$arm5 = match(hp$ID, arm5$Derives_from) hp$arm3 = match(hp$ID, arm3$Derives_from) # discard hairpins without annotated 5p and 3p arms hp = hp[!is.na(hp$arm3) & !is.na(hp$arm5)] # prepare hp$loopStart = 0 hp$loopEnd = 0 # miRNAs on pos and neg strand have to be parsed separately ## posStrand isPos = as.vector(strand(hp) =="+") hp$loopStart[isPos] = end(arm5[hp$arm5[isPos]]) hp$loopEnd[isPos] = start(arm3[hp$arm3[isPos]]) ## negStrand hp$loopEnd[!isPos] = start(arm5[hp$arm5[!isPos]]) hp$loopStart[!isPos] = end(arm3[hp$arm3[!isPos]]) # GRanges for miRNA loops loops = GRanges(seqnames = seqnames(hp), IRanges(hp$loopStart, hp$loopEnd),strand = strand(hp), MI = hp$ID, Name = hp$Name) # sanity check hist(width(loops), breaks = 50) # we dont want th efirst/last nt of bounding mature miRs loops = loops-1 loops$seq = getSeq(Hsapiens, loops) # export loops loopsFasta = loops$seq names(loopsFasta) = paste("loop", loops$MI, loops$Name, sep = "_") writeFasta(loopsFasta, file = "mirbase20loops.fa") readLines("mirbase20loops.fa")
Comment
Latest Articles
Collapse
-
by kinpict.comThe part about this topic feels surprisingly grounded, and the details on the page is the bit that made me slow down. I’d keep <a href="https://kinpict.com/">ai family photo generator</a> bookmarked for later.
-
Channel: Articles
Today, 06:37 PM -
-
by SEQadmin2
NGS has revolutionized clinical microbiology by offering new ways to identify and surveil pathogens without prior knowledge of the target. One popular approach is 16S rRNA and ITS amplicon sequencing, which targets specific microbial markers. But studies are increasingly incorporating shotgun metagenomics, a technique that sequences all DNA from a sample without targeting specific microbial markers. This approach allows more detailed taxonomic classification,...-
Channel: Articles
10-30-2026, 06:46 AM -
ad_right_rmr
Collapse
News
Collapse
| Topics | Statistics | Last Post | ||
|---|---|---|---|---|
|
Started by SEQadmin2, 11-12-2026, 07:59 AM
|
0 responses
27 views
0 reactions
|
Last Post
by SEQadmin2
11-12-2026, 07:59 AM
|
||
|
Started by SEQadmin2, 11-05-2026, 09:25 AM
|
0 responses
35 views
0 reactions
|
Last Post
by SEQadmin2
11-05-2026, 09:25 AM
|
||
|
Started by SEQadmin2, 11-03-2026, 11:54 AM
|
2 responses
56 views
0 reactions
|
Last Post
by kinpict.com
Today, 06:49 PM
|
||
|
Genome Sequencing Reveals Large, Repeat-Rich DNA in Trapdoor Spider Named for Stephen Colbert
by SEQadmin2
Started by SEQadmin2, 10-28-2026, 09:57 AM
|
0 responses
175 views
0 reactions
|
Last Post
by SEQadmin2
10-28-2026, 09:57 AM
|
Comment