[英]excluding specific strings (DNA string) from background (DNA sequence) and shuffling (i.e. generating negative set from positive DNA sequence)
[英]selecting sequence from string in DNA stringset
我正在分析一个大的DNA stringSet,如下所示:
SEQUENCE
A DNAStringSet instance of length 6
width seq names
[1] 253 GAACAGCATGAATGTTAAAACTGAAATGGATGATGATGATGATGATGATGATG...GTATTATGGCATCATGATGAATGATGGTTAGGTTTTCAGAAAAAGCAGAAGA C3
[2] 158 TATATATATATAGTCAATTCGAGGATGTTAGATCGACAATGGGGATTATAGAA...AGCAAGAATTAGCAGGACCACTCCGGATACTATTCCAGAGTTTCCTTGCAAA B4
[3] 619 ATAGACATACACACAAATATTTTTATATCACATGCATACCCATACACACACAT...TCATATATAGACACAAATATATATATACATATTTATACATATATATATATAT A0
[4] 359 TCACCAGTGGCAGCCGCGGCTACAGCAAAAGGTGGCCGGCCAAGGAGTGTCGT...GGTGTCGCGTGCCCTTGTGGACACGGGCTGTACAACGACCCTGATGACTCCG A1
[5] 239 GAAGTGGTAAAGAGTGCGATGCGCTGAAAAAAGAGAGAACAGTACTTGAAATG...CCACACTTCAAGTACTGTTCTCTCTTTTTTCAGCGCATCGCACTCTTTACCA A2
[6] 212 CAAAAAGAAGGTTATGGTGACTGTTTGGTGGTGTACTGCTGGACCCATCCCCT...ATAGGGCCAATCATTCTTCATGACAATGCTCGACCACACGTTTTACTAATGA A3
... .... .....
好吧,假设我需要在名称为A1的字符串中找到特定的序列,例如GCGGCTACAGCAAAAGGTGGCCGGCCAAGG
,我不知道该如何获取。 我已经试过了:
s1= SEQUENCE[4]
A DNAStringSet instance of length 1
width seq names
[1] 359 TCACCAGTGGCAGCCGCGGCTACAGCAAAAGGTGGCCGGCCAAGGAGTGTCGT...AGGTGTCGCGTGCCCTTGTGGACACGGGCTGTACAACGACCCTGATGACTCCG A1
现在,这是一个简单的示例,在该示例中,我可以看到名称A1
对应于字符串[4]
,但是如果仅知道超过10000个字符串中的名称,则无法执行此操作。 无论如何,我只想获取序列,而不是名称,而不是宽度,但是我不知道如何从此字符串集中提取序列。 你能帮助我吗?
一个基本的R选项是使用grepl
。 作为原始数据的较小版本,我正在使用以下方法:
sequences <- c("GAACAGCATG", "TATATATATA", "ATAGACATAC")
sequences[grepl("GAACA", sequences)]
[1] "GAACAGCATG"
如果您正在使用数据框存储序列信息,请使用以下方法:
df[,grepl(df$seq, "GCGGCTACAGCAAAAGGTGGCCGGCCAAGG")]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.