美文网首页生物信息学
RNA-seq之比对(我还没做完)

RNA-seq之比对(我还没做完)

作者: dandanwu90 | 来源:发表于2019-01-15 22:17 被阅读45次

    昨天的质控跑完了,今天继续,虽然我还没做完。没做完。没做完。。。
    fastqc过后,生成报告中,发现有adaptor的存在,所以需要去掉adaptor

    1. 去除adaptor

    1.1 去除adaptor测试
    #将SRR1039508_1.fastq.gz  ./SRR1039508_2.fastq.gz的adaptor 去掉,放在  ../clean的路径下,输入文件为./SRR1039508_1.fastq.gz  ./SRR1039508_2.fastq.gz
    trim_galore --phred33 -q 25 -e 0.1 --length 36 --stringency 3 --paired -o ../clean  ./SRR1039508_1.fastq.gz  ./SRR1039508_2.fastq.gz
    
    1.2 批量去除fastq.gz 中的adaptor
    ls /home/vip11/project/rna/raw_data/*_1.fastq.gz >1
    ls /home/vip11/project/rna/raw_data/*_2.fastq.gz >2
    paste 1 2 >config
    cat >qc_clean.sh #写脚本
    dir='/home/vip11/project/rna/clean'
    cat $1|while read id
    do
     arr=(${id})
     fq1=${arr[0]}
     fq2=${arr[1]}
    trim_galore --phred33 -q 25 -e 0.1 --length 36 --stringency 3 --paired -o $dir $fq1 $fq2
    done
    :wq #保存退出
    nohup bash qc_clean.sh config & #后台运行脚本
    

    2. 建立索引

    下载建立好的索引或是自己构建,此处用已经下载好的索引

    3. 批量比对

    3.1 批量比对前进行测试
    #批量取出每个id的前1000个
    mkdir project/rna/test && cd project/rna/test 
    ls $project/rna/clean/*gz |while read id;do (zcat ${id}|head -1000>  $(basename ${id} ".gz"));done
    #用id=id=SRR1039508的文件进行测试
    hisat2 -p 2 -x /home/qmcui/database/reference/index/hisat/hg38/genome -1 /home/vip11/project/rna/clean/SRR1039508_1_val_1.fq  -2 /home/vip11/project/rna/clean/SRR1039508_2_val_2.fq -S SRR1039508.hisat.sam
    #批量测试
    hisat2 -p 2 -x /home/qmcui/database/reference/index/hisat/hg38/genome -1 $/home/vip11/project/rna/test/{id}_1_val_1.fq  -2 $/home/vip11/project/rna/test/{id}_2_val_2.fq -S $/home/vip11/project/rna/alignment{id}.hisat.sam
    
    3.2 批量比对的代码
    cd project/rna/clean
    
    cat >alignment.sh
    ls *gz|cut -d"_" -f 1 |sort -u |while read id;do
    ls -lh ${id}_1_val_1.fq.gz   ${id}_2_val_2.fq.gz 
    hisat2 -p 2 -x /home/qmcui/database/reference/index/hisat/hg38/genome -1 ${id}_1_val_1.fq.gz   -2 ${id}_2_val_2.fq.gz  -S ${id}.hisat.sam 1>/home/vip11/project/rna/alignment/${id}.log 2>&1
    done
    
    nohup bash alignment.sh &
    

    4. sam 转bam

    ls *.sam|while read id ;do (samtools sort -O bam -@ 2 -o $(basename ${id} ".sam").bam   ${id});done
    rm *.sam 
    #为bam建立索引
    ls *.bam |xargs -i samtools index {}
    #reads的比对情况
    ls *.bam |xargs -i samtools flagstat -@ 2  {}  >
    ls *.bam |while read id ;do ( samtools flagstat -@ 1 $id >  $(basename ${id} ".bam").flagstat  );done
    source deactivate
    
    写在最后:
    1. sra 转为 fastq.gz 后,需要用fastqc生成报告,在当前文件夹菜面进行
      ls *gz |xargs fastqc -t 10 #调用10个线程同时处理
      ls *.sam|head #head 前面输出的前10个文件
      ls *.sam |xgars head #head 前面输出的文件的前10个内容
    2. 查看占用多少内存
      du -h
      构建索引:不同软件的构建方法
      https://www.jianshu.com/p/071c1757ded1
    批量杀任务的其中一种方法
     vip11是用户名;python是提交任务中的搜索关键词;用awk输出第二列的PID;循环用kill执行杀掉任务的命令
    ps -ef|grep vip11|grep python|awk '{print $2}'|while read id ;do kill $id;done
    

    相关文章

      网友评论

        本文标题:RNA-seq之比对(我还没做完)

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