批量bwa比对和samtools排序

拿到fastq文件后,要进行比对和排序

第一步是对reference建立索引

bwa index -a bwtsw $reference         #对于大基因组建立FM-Index

#bwa index -a is ref.fasta             #对小基因组建立index,速度快,内存消耗大

第二步,批量比对和排序

# 2.使用bwa men 比对
mkdir -p ../fina1_bam
cat SRR_Acc_List.txt|while read line 
do 
$bwa mem -t 16 -M -Y  -R "@RG\tID:$line\tPL:ILLUMINA\tLB:$line\tSM:$line" $reference ../bam/${line}.fastq.gz | $samtools view -Sb -t 16 -f bam > ../fina1_bam/${line}.bam &&
echo "** ${line} BWA MEM done **"
# 3.排序
$samtools sort -@ 16 -m 4G  -O bam ../fina1_bam/${line}.bam -o ../fina1_bam/${line}.sorted.bam && \
$samtools index ../fina1_bam/${line}.sorted.bam
echo "** ${line} sorted raw bam file done **"
done

 

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
BWA(Burrows-Wheeler Alignment)是一种常用的基因组比对工具,用于将测序数据与参考基因组进行比对。在使用BWA对样本进行比对后,可以根据比对结果来计算比对率。下面是一种常用的统计方法: 首先,从BWA比对输出的文件中提取比对信息。BWA比对结果一般以SAM(Sequence Alignment/Map)格式保存,可以使用SAMtools等相关工具对比对结果进行解析和提取。 从SAM文件中,可以获得每个比对结果的相关信息,如比对的状态(比对成功或失败)、比对上的read数量等。 比对率通常被定义为成功比对的read数量占总read数量的比例。因此,可以通过计算成功比对的read数量除以总read数量得到比对率。 具体的计算步骤如下: 1. 从SAM文件中按行读取每个比对结果。 2. 对于每行结果,判断比对的状态是否为成功(比对状态通常在每行的FLAG列中标注)。 3. 如果比对成功,则成功比对的read数量1。 4. 继续读取下一行并重复上述步骤,直到读取完所有比对结果。 5. 计算成功比对的read数量除以总read数量,并乘以100%得到比对率(以百分比表示)。 需要注意的是,统计比对率时,应该使用有效的read数量。在有些情况下,比如双端测序,一对read中的其中一条无法比对成功,但另一条可以成功比对,这种情况下,只统计比对成功的read数量。 总之,通过解析BWA比对结果的SAM文件,并统计成功比对的read数量除以总read数量,就可以得到比对率。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值