我有这样的 36-nt 读取:atcttgttcaatggccgatcXXXXgtcgacaatcaa
在 fastq 文件中,XXXX 是不同的条形码。我想在文件中的确切位置(21 到 24)搜索条形码并打印序列中最多 3 个不匹配的序列而不是条形码。
例如:我有条码:aacg
在 fastq 文件中搜索位置 21 到 24 之间的条码,允许序列中有 3 个不匹配,例如:
atcttgttcaatggccgatcaacggtcgacaatcac # it has 1 mismatch
ttcttgttcaatggccgatcaacggtcgacaatcac # it has 2 mismatch
tccttgttcaatggccgatcaacggtcgacaatcac # it has 3 mismatch
我试图首先使用 awk 找到独特的线条并寻找不匹配的地方,但查找和找到它们对我来说非常乏味。
awk 'NR%4==2' 1.fq |sort|uniq -c|awk '{print $1"\t"$2}' > out1.txt
有什么快速的方法可以找到吗?
谢谢你。