美文网首页
探针寻找之旅(2)——与探针匹配的基因组序列的提取

探针寻找之旅(2)——与探针匹配的基因组序列的提取

作者: 嗒嘀嗒嗒嘀嗒嘀嘀 | 来源:发表于2020-03-10 22:28 被阅读0次

    目的是

    根据现有探针,匹配到转座子,在转座子与探针匹配的位点的相邻区间寻找重复次数高的序列。

    步骤

    • 1st blast提取匹配序列ID
    # 打点当前目录参数
    cd $(pwd)
    # 建库
    makeblastdb -in csi.chromosome.fa -dbtype nucl -out csi.chromosome.fa -parse_seqids
    # blastn比对 1个cpu
    blastn -query fish.fa -db csi.chromosome.fa -num_threads 1 -outfmt 7 -out fish_csi.out7
    # 探针名称 CL CL-1 CL-2 CL-3 CL-5 C1-6 C5-1 C7-1 CiclevCL2 CiclevCL17 CsCen1 CsCen2 CsCen3
    less fish_csi.out7 | awk '$1=="CL" && $3>=80 && $4>=85{print $0}' > CL_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CL-1" && $3>=80 && $4>=114{print $0}' > CL-1_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CL-2" && $3>=80 && $4>=120{print $0}' > CL-2_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CL-3" && $3>=80 && $4>=118{print $0}' > CL-3_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CL-5" && $3>=80 && $4>=137{print $0}' > CL-5_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="C1-6" && $3>=80 && $4>=44{print $0}' > C1-6_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="C5-1" && $3>=80 && $4>=907{print $0}' > C5-1_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="C7-1" && $3>=80 && $4>=1377{print $0}' > C7-1_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CiclevCL1" && $3>=80 && $4>=112{print $0}' > CiclevCL1_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CiclevCL2" && $3>=80 && $4>=97{print $0}' > CiclevCL2_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CiclevCL17" && $3>=80 && $4>=367{print $0}' > CiclevCL17_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CsCen1" && $3>=80 && $4>=28{print $0}' > CsCen1_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CsCen2" && $3>=80 && $4>=40{print $0}' > CsCen2_Ident0.8Cover0.8
    less fish_csi.out7 | awk '$1=="CsCen3" && $3>=80 && $4>=29{print $0}' > CsCen3_Ident0.8Cover0.8
    
    # 将筛选后的文件转换为bed格式文件
    for i in $(ls *Ident0.8Cover0.8)
    do
            echo $i
            less $i | awk '{if($9<$10)print $2"\t"$9-1"\t"$10"\t"$1; else print $2"\t"$10-1"\t"$9"\t"$1}' > ${i}.bed
    done
    
    • 2nd 对照转座子序列ID,提取与转座子ID重合的区段

    • 3rd 通过重合区段的序列ID提取基因组序列

    # 清点当前目录
    cd $(pwd)
    # 将TE的格式转为bed
    less csi.repeat.gff3 | awk '{if($4<$5) print $1"\t"$4"\t"$5"\t"$9; else print $1"\t"$5"\t"$4"\t"$9}' > cs.te.bed
    
    # bedtools intersect求与TE的交集
    # 生成的文件只显示prob的注释
    for i in $(ls ../blastId/*.bed)
    do
            echo $i
            bedtools intersect -a $i -b cs.te.bed | sort > ${i%.*}.bedtools
    done
    # 生成的文件只显示TE的注释
    for i in $(ls ../blastId/*.bed)
    do
            echo $i
            bedtools intersect -a cs.te.bed -b $i | sort > ${i%.*}.tebedtools
    done
    # 提取序列
    for i in $(ls *.bedtools)
    do
            echo $i
            bedtools getfasta -fi csi.chromosome.fa -bed $i -fo $i.fasta
    done
    
    • 下一步怎么办呢?
      • 多序列比?对好像没有什么用处
      • 每条序列前后各推200bp然后多序列比对?

    相关文章

      网友评论

          本文标题:探针寻找之旅(2)——与探针匹配的基因组序列的提取

          本文链接:https://www.haomeiwen.com/subject/bmpudhtx.html