目录
使用funannotate进行基因预测,该软件整合了多个软件综合分析blabla
零、更新新的funannotate流程
1)利用基本特征分析中得到的软屏蔽序列,排序、重命名、改名
$ funannotate sort -i genome.softmask.fasta -o rename_genome.softmask.fasta
# 先用funannotate对该文件进行排序和重命名
$ sh orthofinder_changename.sh
# 运行这个脚本去给序列名字前面加上物种名,好区分,不然都是scaffoldXX分不清
$ vim orthofinder_changename.sh #编辑一个更改名字的脚本
#脚本内容如下
#!/bin/bash
# 设置物种名变量
species_name="Umbilicaria_deusta" #这个应该是换哪个名就填哪个哈哈哈,也挺方便不是
# 读取蛋白文件中每一行文本
while read -r line; do
# 如果当前行包含 ">" 符号,说明是序列头部
if [[ "$line" == ">"* ]]; then
# 将序列 ID 和描述信息拆分出来,并在其前面加上物种名并连接
new_header="${species_name}${line#>}"
#echo ">${new_header}" # 调试输出新的序列头部
else
# 否则说明是序列数据,直接输出即可
#echo "${line}"
fi
done < "Umbilicaria_deusta.proteins.fa" > "output.fasta"
#使用该脚本,记得提前改一下species_name的名字,done后面输入和输出的名字
2)利用处理好的序列文件直接进行预测
$ nohup funannotate predict -i rename_genome.softmask.fasta --species "Umbilicaria antarctica" -o Umbilicaria_antarctica.fun/ --busco_seed_species aspergillus_nidulans --busco_db /ifs1/User/wuqi/database/busco_db/ascomycota_odb10/ --cpus 12 &
后面做共线性分析的时候,也是直接用这个rename_genome.softmask.fasta(就是基特软屏蔽后sort、重命名、改名的)不要用一开始组装好的啥也没处理的
一、清除重复序列
$ conda activate funannotate
# 先激活该环境
$ nohup funannotate clean -i GCA_023645895.1_KEW_Uvel_genomic.fna -o 5895clearrepeat_out.fasta &
# 清除重复序列
#用funannotate清除重复序列 funannotate clean <arguments>
-i, --input Multi-fasta genome file (Required) 输入序列
-o, --out Cleaned multi-fasta output file (Required) 输出文件
-p, --pident Percent identity of overlap. Default = 95 一致性
-c, --cov Percent coverage of overlap. Default = 95 覆盖度
-m, --minlen Minimum length of contig to keep. Default = 500 最小长度
--exhaustive Test every contig. Default is to stop at N50 value. 每条都比or默认比到N50
二、重命名
$ funannotate sort -i 5895clearrepeat_out.fasta -o 5895rename_out.fasta
# 重命名fasts格式文件标题header 因为超过16个字符会受限
# funannotate sort <arguments> 使用介绍
-i, --input Multi-fasta genome file. (Required) 输入文件
-o, --out Sorted by size and relabeled output file. (Required) 输出文件
-b, --base Base name to relabel contigs. Default: scaffold
--minlen Shorter contigs are discarded. Default: 0
三、屏蔽重复序列
$ funannotate mask -i 5895rename_out.fasta --cpus 12 -o genome_masked.fasta
# 使用funanotate进行基因预测,先把重复序列屏蔽掉
# mask表示默认模式 -i是输入序列 -o是输出文件
# funannotate mask <arguments> 使用介绍
Arguments:
-i, --input Multi-FASTA genome file. (Required)
-o, --out Output softmasked FASTA file. (Required)
Optional:
-m, --method Method to use. Default: tantan [repeatmasker, repeatmodeler]
-s, --repeatmasker_species Species to use for RepeatMasker
-l, --repeatmodeler_lib Custom repeat database (FASTA format)
--cpus Number of cpus to use. Default: 2
--debug Keep intermediate files
四、基因预测
$ nohup funannotate predict -i genome_masked.fasta --species "Umbilicaria lyngei" -o Umbilicaria_lyngei.fun/ --busco_seed_species aspergillus_nidulans --busco_db /ifs1/User/wuqi/database/busco_db/ascomycota_odb10/ --cpus 12 &
# 屏蔽掉重复序列之后的文件再进行基因注释
# 选择相应物种名(填写自己的物种名就行),设置输出文件目录,选择BUSCO中训练的物种名,找个近缘物种,选择BUSCO数据模型,选择子囊菌门数据库
$ funannotate species #查找BUSCO下物种 找一个近缘物种
# aspergillus_fumigatus 烟曲霉 本次预测所选用的物种~
# 去网站找manully 下载BUSCO数据库,上传至database文件夹的BUSCO下,然后解压使用 (使用已有的ascomycota子囊菌门就行)
#运行速度较慢,记得使用nohup指令
#必须参数:
-i 输入文件,即mask后的输出结果 -o 输出文件夹 -s, --species 预测基因组的物种名
#主要可选参数:
--maker_gff 自行通过MAKER2预测的结果文件,直接用于EVM整合预测结果
-w, --weights设置EVM整合的权重
--busco_seed_species 选择BUSCO中Augustus软件进行训练的物种名,一般选择近缘物种,默认为anidulans
--busco_db 选择BUSCO数据的模型,默认为dikarya --ploidy 基因组的倍型,默认为1
--genemark_gtf自行通过Genemark预测的结果文件
--min_intronlen 最小内含子长度,默认为10
--max_intronlen 最大内含子长度,默认为2000
--min_protlen最小蛋白序列长度,默认为50
--cpus CPU默认为2
$ nohup funannotate predict -i ~/Qxy/yuce/funannotate_test_pustulata/pustulata_genome_masked.fasta --species "Lasallia pustulata" --augustus_species UM_species -o Lasallia_pustulata_testfun2 --cpus 20 &
#使用--augustus_species UM_species参数,用自己训练的物种跑funannotate
跑完会得到log文件,predict_misc预测错误文件,predict_result预测结果文件
预测结果,其他可以删掉,里面有预测的蛋白文件protein.fasta,CDS文件,后续会用
五、BUSCO评估
$ busco -m protein -c 10 -i Umbilicaria_vellea.proteins.fa -o proteins_Busco_out -l /ifs1/User/wuqi/database/busco_db/ascomycota_odb10/
# 对预测得到的蛋白文件进行BUSCO评估
$ busco -m genome -c 10 -i Umbilicaria_vellea.scaffolds.fa -o Umbilicaria_vellea_scaffolds_Busco_out -l /ifs1/User/wuqi/database/busco_db/ascomycota_odb10/
# 对预测得到的基因组文件进行BUSCO评估
$ python3 /ifs1/User/wuqi/SoftTools/busco-5.0.0/scripts/generate_plot.py -wd BUSCOpicture_test
# BUSCO作图,把txt文件放到一个目录下,cd出去,然后执行该命令
六、基因预测流程串联
$ sh funannotate.sh
只需要运行该脚本,就可得到相应masker.fasta文件,然后利用它去预测(步骤四)
其他中间文件也可以都删除 如clearrepeat.fasta rename,fasta
#!/bin/bash
funannotate clean -i *_genomic.fna -o clearrepeat.fasta
funannotate sort -i clearrepeat.fasta -o rename.fasta
funannotate mask -i rename.fasta --cpus 12 -o masker.fasta
#基因预测流程串联起来,先激活环境,再清除重复序列,再排序,再重命名,再屏蔽重复序列,再预测