linux

200918 Circ之旅4.2-CIRIquant

2020-09-18  本文已影响0人  dicklim

Kevinzjy/ CIRIquant
CIRIquant-cookbook
SciPy 1.2.2
运行过程中报错处理的一些原理:200719 CIRIquant使用记录

安装踩坑

首先,这是个conda上没有的软件,所以只能pip,安装。配合生信别的软件使用,所以使用的是2.7的包:

numexpr==2.6.9
numpy==1.16.4
pysam==0.15.2
PyYAML==5.1.1
scikit-learn==0.20.3
scipy==1.2.2
argparse==1.2.1

坑1:这个scipy1.2.2是针对1.2.1的debug版本,这个软件conda没有,只能去github下了之后通过pip进行本地安装
坑2:conda命令对于环境可以自己识别,你在哪个环境里安装,就安装到哪个环境里,但是pip不是,在创建环境的时候,会在环境里创建新的pip,所以激活环境之后如果想使用pip安装最好which一下,看看是用的哪个pip,如果是base下的pip可能会影响环境外的包配置。
注3:这儿PyYAML很容易报错,因为版本过高,所以最好建个新环境然后先把5.1.1版本的PyYAML装好

## 可以用这一段命令进行安装
conda install --yes --file requirements.txt
(base) dick@aaa-virtual-machine:~ $ which conda
/home/dick/anaconda3/bin/conda
(rna) dick@aaa-virtual-machine:~ $ which conda
/home/dick/anaconda3/bin/conda
(base) dick@aaa-virtual-machine:~ $ which pip
/home/dick/anaconda3/bin/pip
(rna) dick@aaa-virtual-machine:~ $ which pip
/home/dick/anaconda3/envs/rna/bin/pip

pip一样可以换源:pip配置国内源

安装本地的tar.bz软件(安装scipy):

这里面是有不同的,有可能比如conda有,但是网络问题没法装,还有就是conda本身没有,这个可以去对应的源看,比如我用的清华源,那我就去清华源看有没有对应的包

conda可以装,但是速度太慢

这种可以把包下下来然后conda install --use-local

Conda install 本地压缩包文件tar.bz2

conda本身没有

这种use local就不好使了,还是要靠pip,把tar.bz解压后,cd到文件夹里,然后python setup.py install,这是直接用包里面的setup文件来安装这个包。(注:Python2和Python3要区分一下可能,但是我这儿环境里是Python2所以我就没注意)

注:这儿最好先which python一下,确定一下python用的是env里面的

留个链接:{Python}安装第三方包(setup.py)

CIRIquant

nohup CIRIquant -t 30 \
          -1 /home/stu3/data/clean/SRR5635537_1_val_1.fq.gz \
          -2 /home/stu3/data/clean/SRR5635537_2_val_2.fq.gz \
          --config /home/stu3/data/config.yml \
          -o /home/stu3/data/out2log \
          -p SRR5635537 >nohup.log 2>&1 &

本次使用,最高内存占用约 120G 多点。之前一直停滞在De novo alignment for circular RNAs,大概原因是因为内存不够,所以检测的东西没导出,所以就没继续往下了。

以下为输出文件:

[Tue 2020-07-21 05:02:53] [INFO ] Input reads: SRR5635537_1_val_1.fq.gz,SRR5635537_2_val_2.fq.gz
[Tue 2020-07-21 05:02:53] [INFO ] Library type: unstranded
[Tue 2020-07-21 05:02:53] [INFO ] Output directory: /home/stu3/Circ/5_CIRIouput/SRR5635537, Output prefix: SRR5635537
[Tue 2020-07-21 05:02:53] [INFO ] Config: hg19 Loaded
[Tue 2020-07-21 05:02:53] [INFO ] 48 CPU cores availble, using 20
[Tue 2020-07-21 05:02:53] [INFO ] Align RNA-seq reads to reference genome ..
[Tue 2020-07-21 07:02:35] [INFO ] Estimate gene abundance ..
[Tue 2020-07-21 07:17:03] [INFO ] No circRNA information provided, run CIRI2 for junction site prediction ..
[Tue 2020-07-21 07:17:03] [INFO ] Running BWA-mem mapping candidate reads ..
[Tue 2020-07-21 08:20:31] [INFO ] Running CIRI2 for circRNA detection ..
[Tue 2020-07-21 08:48:42] [INFO ] Extract circular sequence
[Tue 2020-07-21 08:49:14] [100% ] [##################################################]
[Tue 2020-07-21 08:49:14] [INFO ] Building circular index ..
[Tue 2020-07-21 08:49:40] [INFO ] De novo alignment for circular RNAs ..
[Tue 2020-07-21 10:01:28] [INFO ] Detecting reads containing Back-splicing signals
[Tue 2020-07-21 10:04:06] [INFO ] Detecting FSJ reads from genome alignment file
[Tue 2020-07-21 10:18:28] [INFO ] Merge bsj and fsj results
[Tue 2020-07-21 10:18:28] [INFO ] Loading annotation gtf ..
[Tue 2020-07-21 10:19:08] [INFO ] Output circRNA expression values
[Tue 2020-07-21 10:19:22] [INFO ] circRNA Expression profile: SRR5635537.gtf
[Tue 2020-07-21 10:19:22] [INFO ] Finished!

差异表达

这一步主要是找到差异基因

Usage:
  CIRI_DE [options] -n <control> -c <case> -o <out>

  <control>         CIRIquant result of control sample
  <case>            CIRIquant result of treatment cases
  <out>             Output file

Options (defaults in parentheses):

  -p                p value threshold for DE and DS score calculation (default: 0.05)
  -t                numer of threads (default: 4)

Example usage:
  CIRI_DE -n control.gtf -c case.gtf -o CIRI_DE.tsv

这里我不是非常理解为啥要导出成tsv,个人感觉csv也行,反正我是直接放到excel里面看差异表达

CIRI_DE -t 10 -n SRR5635535.gtf -c SRR5635537.gtf -o ./output.tsv
[Tue 2020-07-21 15:09:56] [INFO ] Experiment: SRR5635537.gtf
[Tue 2020-07-21 15:09:56] [INFO ] Control: SRR5635535.gtf
[Tue 2020-07-21 15:09:56] [INFO ] Threads: 10
[Tue 2020-07-21 15:09:56] [INFO ] Threshold: 0.05
[Tue 2020-07-21 15:09:56] [INFO ] Loading CIRIquant result: /home/stu3/Circ/6_allgtf/SRR5635537.gtf
[Tue 2020-07-21 15:09:56] [INFO ] Loading CIRIquant result: /home/stu3/Circ/6_allgtf/SRR5635535.gtf
[Tue 2020-07-21 15:11:43] [INFO ] Output csv: /home/stu3/Circ/6_allgtf/output.tsv
[Tue 2020-07-21 15:11:43] [INFO ] Finished!

多样本分析

顺便记录一下多样本的分析吧,如果有很多样本,就要把样本分成control组和case组把所有的路径整理成如下,记录在sample_gene.lst
注:这个samplelist里的文件和擀面那个sample的不一样,这儿的文件是每个输出文件夹里有个gene文件夹里的,应该是单纯做个count

CONTROL1 ./c1/gene/c1_out.gtf
CONTROL2 ./c2/gene/c2_out.gtf
CONTROL3 ./c3/gene/c3_out.gtf
CASE1 ./t1/gene/t1_out.gtf
CASE2 ./t2/gene/t2_out.gtf
CASE3 ./t3/gene/t3_out.gtf

接着使用命令prepDE.py -i sample_gene.lst获得gene_count_matrix.csv文件,这个文件后面会用到。
这儿要安装R环境,以及edgeR包所以使用命令安装一下

conda install r-base=3.6 #安装R语言
# 220104更新一点小问题
conda install r-optparse # R包 以 r- 开头 
#这儿用conda总是有问题,所以我打开R,在R里面装
install.packages("BiocManager")
install.packages("statmod")
library(BiocManager)
BiocManager::install("edgeR")

接着使用CIRI_DE_replicate命令来完成分析

Usage:
  CIRI_DE_replicate [options]

  --lib             library information by CIRIquant
  --bsj             circRNA expression matrix
  --gene            gene expression matrix
  --out             output differential expression result

Example:
  CIRI_DE_replicate --lib  library_info.csv \
            --bsj  circRNA_bsj.csv \
            --gene gene_count_matrix.csv \
            --out  circRNA_de.tsv

至此Circ的上游分析已经告一段落了,回头可能会整理一下RnaSeq不一样的地方

上一篇下一篇

猜你喜欢

热点阅读