PASA(2.4.1)使用记录

文章仅是记录自己的学习使用,有错误请指出,我立刻改正!

官方说明:https://github.com/PASApipeline/PASApipeline/wiki

一、Conda安装PASA

(一)软件安装

##conda环境##
conda create -n PASA
conda activate PASA
##PASA安装##
conda install -c bioconda pasa
conda install -c bioconda samtools=1.9
conda install -c bioconda samtools openssl=1.0
conda install -c bioconda gmap=2018.03.25
#1、可以选择不使用gmap(只使用blat),这样就不用更新gmap,gmap=2017.11.15和conda的环境有冲突,会导致报错。

(二)配置文件

##编辑比对配置文件##
cd pasa_conf
cp pasa.alignAssembly.Template.txt alignAssembly.config
vi alignAssembly.config
DATABASE=/tmp/mydb.sqlite 
validate_alignments_in_db.dbi:--MIN_PERCENT_ALIGNED=80
validate_alignments_in_db.dbi:--MIN_AVG_PER_ID=80
 ##环境变量##
export PATH=/home/miniconda2/envs/PASA/bin:$PATH
export PATH=/home/miniconda2/envs/PASA/opt/pasa-2.4.1/bin:$PATH

二、设置污染数据库进行过滤

##配置UniVec数据库##
wget ftp://ftp.ncbi.nih.gov/pub/UniVec/UniVec
makeblastdb -in UniVec -dbtype nucl -parse_seqids -title UniVec -out UniVec
#1、UniVec是一个数据库,可用于快速识别核酸序列中可能来自载体来源(载体污染)的片段。
#2、formatdb和makeblastdb的效果一样。

##通过污染数据库进行过滤##
tools=/home/miniconda2/envs/PASA/opt/pasa-2.4.1/bin
$tools/seqclean \
all_transcripts.fasta \
-v /home/PASA/UniVec
#1、输出的all_transcripts.fasta.clean、all_transcripts.fasta.cln以及all_transcripts.fasta要在同一个文件夹里,否则后面运行时会报错。
#2、依据处理需求下载不同数据库,现在的NGS数据一般不需要过滤。

三、map到参考基因组(主程序)

pasa_dir=/home/miniconda2/envs/PASA/opt/pasa-2.4.1/bin
$pasa_dir/Launch_PASA_pipeline.pl \
-c alignAssembly.config \
-C -R \
-g genome_sample.fasta \
-t all_transcripts.fasta.clean \
-T -u all_transcripts.fasta \
--ALIGNERS blat,gmap --CPU 20
#1、--ALIGNERS调用的比对的软件(gmap、blat),可以单独或一起使用。
#2、如前面不进行clean,直接对fasta文件进行mapping,则删去-T -u参数,将转录本文件放在-t参数后。
#3、二次调用主程序前,需要删除数据库文件或者修改配置文件中的数据库名(DATABASE=/tmp/mydb.sqlite)。

(一)参数说明:

-c:设置比对配置文件,可以把配置文件放在自定义目录下
-C :flag create MYSQL database
-R :flag run alignment/assembly pipeline
-g:设置基因组文件
-t:设置转录本过滤后的.clean文件
-T:flag,transcript db were trimmed using the TGI seqclean tool
-u :设置转录本文件
--MAX_INTRON_LENGTH /-I :GMAP or BLAT 所需的最大内含子,默认值为100000
--IMPORT_CUSTOM_ALIGNMENTS_GFF3:only using the alignments supplied in the corresponding GFF3 file

(二)输出结果:

  • 使用blat/gmap将 all_transcripts.fasta 文件与基因组样本.fasta 对齐。生成的文件包括:
    'sample_mydb_pasa.validated_transcripts.gff3/gtf/bed':有效比对
    'sample_mydb_pasa.failed_gmap_alignments.gff3/gtf/bed':验证测试失败的比对
    'alignment.validations.output':描述对齐验证结果,以制表符分隔

  • 根据基因组比对位置将正确的比对聚类,并使用 PASA 比对组装器进行装配。生成的文件包括:
    'sample_mydb_pasa.assemblies.fasta':FASTA 格式的 PASA 装配结果 'sample_mydb_pasa.pasa_assemblies.gff3/gtf/bed':PASA 装配结构结果
    'sample_mydb_pasa.pasa_alignment_assembly_building.ascii_illustrations.out':装配程序集的描述以及它们是如何从底层转录本比对中构建的

  • 'sample_mydb_pasa.pasa_assemblies_scribed.txt':制表符分隔的格式,描述 PASA 装配集的内容,包括装配到相应结构中的转录本

四、其他功能

(一)根据PASA结果提取ORF

pasa_dir= tools=/home/miniconda2/envs/PASA/opt/pasa-2.4.1
$pasa_dir/scripts/pasa_asmbls_to_training_set.dbi \
--pasa_transcripts_fasta sample_mydb.assemblies.fasta \
--pasa_transcripts_gff3 sample_mydb.pasa_assemblies.gff3
#1、要在运行完主程序的文件夹下运行,不然会产生报错。
#输出结果:
#sample_mydb.assemblies.fasta.transdecoder.cds/pep/gff3/bed: ORF序列
#sample_mydb.assemblies.fasta.transdecoder.genome.bed/gff3: 预测产生的ORF对应基因组的结构文件

(二)基因组注释提升

##检查gff3文件与PASA 兼容性##
pasa_dir=/home/miniconda2/envs/PASA/opt/pasa-2.4.1/bin
perl $pasa_dir/misc_utilities/pasa_gff3_validator.pl orig_annotations_sample.gff3
#1、pasa_gff3_validator.pl 将显示gff3 文件中pasa无法识别、理解或无法正确加载的gene注释信息行。
#2、提交的gff3注释文件中的每个基因必须有相应的CDS序列。
#3、文件必须要是gff3格式。

##加载gff3文件##
$pasa_dir/scripts/Load_Current_Gene_Annotations.dbi \
-c alignAssembly.config \
-g genome_sample.fasta \
 -P orig_annotations_sample.gff3

##比较注释比较并更新的gff3文件##
$pasa_dir/Launch_PASA_pipeline.pl \
-c annotCompare.config -A \
-g genome_sample.fasta \
-t all_transcripts.fasta.clean \
--CPU 20
#1、-A compare to annotated genes。-R 用于比对transcripts , -A 用于和已有gff3注释文件的比较和更新。
#2、PASA 将输出一个新的 GFF3 文件,其中包含 PASA 更新版本的基因组注释,包括 PASA 成功更新的那些基因模型,以及那些保持不变的基因模型。mysql_db.gene_structures_post_PASA_updates.pid.gff3(pid 是进程 ID)        
#3、一个较完整gff3注释文件通常需要至少两轮的注释加载、注释比较和注释更新,才能最大程度地将转录本对齐并入基因结构中。
#4、alignAssembly.config文件。将 $PASAHOME/pasa_conf/pasa.annotationCompare.Template.txt 文件复制到工作目录中作为“annotCompare.config”。然后,像之前一样使用 alignAssembly.config 文件那样将 MYSQLDB=< MYSQLDB> 替换为 MYSQLDB=/tmp/mydb.sqlite。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,542评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,822评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,912评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,449评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,500评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,370评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,193评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,074评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,505评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,722评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,841评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,569评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,168评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,783评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,918评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,962评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,781评论 2 354

推荐阅读更多精彩内容