【nextflow】本地安装nf-core/rnaseq

参考博文:https://zhuanlan.zhihu.com/p/428316843 转载请注明出处

 

1. 下载安装包:

  nextflow可以通过bioconda安装,所以这次我们只需要下载nf-core/rnaseq的安装包即可:

mamba create -n nextflow nextflow nf-core
conda activate nextflow
nf-core download nf-core/rnaseq
tar -zxvf nf-core-rnaseq-3.4.tar.gz

  此时我们可以通过nextflow运行这个安装包:

nextflow run nf-core-rnaseq-3.6/workflow/  \ # 格式就是nextflow run  <下载好的nf-core-rnaseq文件夹下workflow文件夹的目录>
    --input samplesheet.csv \ # 就是上一步我们用python脚本生成的samplesheet.csv文件
    --fasta Homo_sapiens.GRCh38.dna.primary_assembly.fa \ # 参考基因组所在的目录
    --transcript_fasta gencode.v38.transcripts.fa \ # 参考转录组所在的目录
    --gtf gencode.v38.annotation.gtf \ # 基因组注释文件所在的目录
    --gencode \ # 强调GTF文件的格式是GENCODE的,因为从ENSEMBL和GENCODE下载    的GTF文件格式会略有不同
    --aligner hisat2 \ # 默认的比对和定量软件是STAR+Salmon,但是STAR真的是太耗内    存了,几百G都有可能,跑着跑着就core dumped了,所以内存不够的就用hisat2吧
    --hisat2_index /genome/index/hisat2 \ # 可以不写这个参数,pipeline会自己构建索引,就是比较慢
    --splicesites gencode.v38.annotation.splice_sites.txt \ # 可以不写,pipeline会利用上面的python脚本自己生成
    --skip_qualimap \ # 因为qualimap是用于外显子测序的质控的,如果不跳过就会报错
    --save_reference \ # 如果没有提供现成的hisat2_index/salmon_index等,可以在此次运算后将index保存下来
    -profile singularity # 用singularity容器运行,省心又省力    

  按照这个测试了一下发现不行,有一步会报错。这时候有两种可能,一种是我的数据不对,可能是存在不配对的reads导致出现这个问题我重新换了数据,发现还是不对。另一种可能是这个本地的镜像在运行时会有问题,所以我重新使用了云版本的nf-core,代码如下:

nextflow run nf-core/rnaseq  -profile singularity --input samplesheet.csv  \
    --fasta refrence.fasta \
     --gtf  'refrence.gtf' \
    --aligner hisat2 \
    --skip_qualimap --outdir ./test5  --max_memory 60.GB --max_cpus 32 -r 3.6

  一次跑通非常开心。

  这里有这样几个点,参考基因组需要normalized,每行需要相同的碱基,有的参考基因组需要使用picard工具重新normalize一下。

  其次参考基因组的gff最号转成gtf,我首先提取了primary transcripts然后将gff文件使用gffread转化为gtf。

  测序文件可以直接用fastq-dump来注释:

fastq-dunmp --gzip --split-3 SRR.sra

  此处注意fastq-dump一般推荐使用--split-3这个拆分方法,另外,加上--gzip就可以直接获得压缩格式的文件。

posted @ 2022-03-30 14:46  xjce  阅读(1073)  评论(0编辑  收藏  举报