最近讀了一篇文章名為《LncPipe: A Nextflow-based pipeline for identification and analysis of long non-coding RNAs from RNA-Seq data》于2018年6月28號發(fā)表在《Journal of Genetics and Genomics》上,文章通過構建一個新的程序名為LncPipe 來幫助科研工作著從RNAseq數(shù)據(jù)中挖掘出lncRNA。
文章的原文是這么寫的:
LncPipe is the first one-stop pipeline integrating all the essential softwares and analyses for exploring lncRNAs from RNA-Seq data。
one-stop pipeline 顯得相當?shù)挠腥?,懷著好奇的心態(tài),來看看這個軟件到底好不好用
1.軟件的運行流程
我們可以看到整個軟件的運行邏輯還是比較清楚的。
軟件最大的特點是用 用R、perl、javascript、shell 將分析的各個流程銜接起來。
反正看起來比較牛逼的樣子...

2.軟件的安裝
首先我們找到網站的站點....這個網站有2個站點
github:https://github.com/likelet/LncPipe
LncPipe:http://seqworld.com/LncPipe/
因為這是軟件的組裝,所以安裝起來顯得相當?shù)穆闊?br>
我們來看看軟件的安裝:
a.安裝NextFlow
# Make sure that Java v8+ is installed:
java -version
# Install Nextflow
curl -fsSL get.nextflow.io | bash
#也可以通過conda 來安裝
conda install -c bioconda nextflow
# Add Nextflow binary to your PATH:
mv nextflow ~/bin/
# OR system-wide installation:
# sudo mv nextflow /usr/local/bin
第一步我們的nextflow就安裝上去了

第二步移動nextflow到指定文件夾(軟件我都是放到一個專門的地方)
mv nextflow /data2/niexiongwei/Tools/nextflow/
第三步配置安裝path
vim ~/.bashrc
source ~/.bashrc

到這里第一步nextflow就安裝好了
b.安裝pipeline
nextflow 能夠聯(lián)網訪問Github 所以不用安裝
c.pepline的配置
作者提供了3種配置方式Docker、Singularity、conda
很顯然 Docker 是最好的選擇...
首先是安裝Docker環(huán)境
DOcker 安裝還是比較簡單的,需要注意的是需要弄清楚Linux 內核版本
我們以我的機器Ubantu 作為例子
curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -
sudo apt-get -y install docker-ce
這個項目最大的亮點是用Docker封裝了一個運行容器,就是這個安裝有點扯...
我們來看看怎么運行的
3.軟件運行
nextflow -c docker.config run LncRNAanalysisPipe.nf
4.準備參數(shù)
配置輸入數(shù)據(jù)
params {
/*
User setting options (mandatory)
*/
// input file and genome reference
fastq_ext = '*_{1,2}.fq.gz'
fasta_ref = '/data/database/hg38/genome.fa'
design = 'design.file'
hisat2_index = '/data/database/hg38/hisatIndex/grch38_snp_tran/genome_snp_tran'
cpatpath='/opt/CPAT-1.2.3'
//human gtf only
gencode_annotation_gtf = "/data/database/hg38/Annotation/gencode.v24.annotation.gtf"
lncipedia_gtf = "/data/database/hg38/Annotation/lncipedia_4_0_hg38.gtf" // set "null" if you are going to perform analysis on other species
// additional options for non-human species, else leaving them unchanged
species="human"http:// mouse , zebrafish, fly
known_coding_gtf=""
known_lncRNA_gtf=""
/*
User setting options (optional)
*/
// tools setting
star_idex = ''//set if star used
bowtie2_index = ''//set if tophat used
aligner = "hisat" // or "star","tophat"
sam_processor="sambamba"http://or "samtools(deprecated)"
qctools ="fastp" // or "afterqc","fastp","fastqc"
detools = "edger"http://or "deseq2","noiseq" not supported yet
quant = "kallisto"http:// or 'htseq'
//other setting
singleEnd = false
unstrand = false
skip_combine = false
lncRep_Output = 'reporter.html'
lncRep_theme = 'npg'
lncRep_cdf_percent = 10
lncRep_max_lnc_len = 10000
lncRep_min_expressed_sample = 50
mem=60
cpu=30
}
5.輸出結果
Result/
├── QC
│ ├── N1141_1.clean_fastqc.html
│ ├── N1141_2.clean_fastqc.html
│ ├── N1177_1.clean_fastqc.html
│ └── N1177_2.clean_fastqc.html
├── Identified_lncRNA
│ ├── all_lncRNA_for_classifier.gtf
│ ├── final_all.fa
│ ├── final_all.gtf
│ ├── lncRNA.fa
│ ├── protein_coding.fa
│ └── protein_coding.final.gtf
├── LncReporter
│ ├── Differential_Expression_analysis.csv
│ └── Report.html
├── Quantification
│ ├── kallisto.count.txt
│ └── kallisto.tpm.txt
└── Star_alignment
├── STAR_N1141
│ ├── N1141Aligned.sortedByCoord.out.bam
│ ├── N1141Log.final.out
│ ├── N1141Log.out
│ ├── N1141Log.progress.out
│ └── N1141SJ.out.tab
└── STAR_N1177
├── N1177Aligned.sortedByCoord.out.bam
├── N1177Log.final.out
├── N1177Log.out
├── N1177Log.progress.out
└── N1177SJ.out.tab
最后總結一下,這個軟件數(shù)據(jù)配置是真的麻煩...
其最大的特點就是用程序將各個分析軟件銜接起來了,希望能夠一次輸出結果,然而生物數(shù)據(jù)分析種會有各種各樣的問題,一次打包運行可能會帶來一些問題。
這個軟件最后的總結就是,很雞肋,安裝配置相當麻煩,而且錯誤奇怪,不如自己動手安裝流程一步步的分析...
6.后記
因為肺炎的原因,暫時不能回校,因此沒辦法用學校的服務器進行數(shù)據(jù)分析。
等疫情結束后,實際數(shù)據(jù)運行一次,看看最后的輸出結果....
先留個尾巴在這里