基因家族分析(1)数据准备及软件安装

欢迎关注Bioinfor 生信云微信公众号!

基因组数据的准备

进行全基因水平的基因家族鉴定之前,需要准备好一套基因组数据,基因组数据可以从公共数据库下载,也可以根据基因组文献提供的地址到指定网站进行下载。一套完整的数据至少包括如下内容:

  1. 基因组序列文件,fasta 格式
  2. 基因结构注释文件,gff3 格式
  3. 所有蛋白质序列文件,fasta 格式
  4. 所有 cds 序列文件,fasta 格式
    由于不同基因组数据库存储的数据格式及命名有各自规范,很多数据下载后不能直接用来做基因家族分析,需要提前处理好,处理原则如下:
    1.去除所有可变剪切,一个编码基因保留一个转录本
    2.去除 gff3 文件中非编码基因及重复序列等信息下面介绍 JGI、Ensembl 和 NCBI 下载的数据的处理

JGI/phytozome 数据处理

phytozome 是一个收录植物基因组数据的网站,数据整理比较规范,已经提供了去除可变剪切的 cds 和 protein 序列文件。只有 gff3 文件需要过滤处理。

示例数据为拟南芥数据,下载于phytozome13

Athaliana_167_TAIR10.cds_primaryTranscriptOnly.fa #cds序列
Athaliana_167_TAIR10.gene_exons.gff3 #基因结构文件
Athaliana_167_TAIR10.protein_primaryTranscriptOnly.fa #蛋白文件
Athaliana_167_TAIR9.fa #基因组文件

## 提取最长转录本基因ID
awk '$1 ~ /^>/ {print $1}' Athaliana_167_TAIR10.cds_primaryTranscriptOnly.fa |   sed 's/^>//' > Ath_mRNA.id

## gff3文件相对于cds和蛋白序列文件,ID部分多了.TAIR10的字符串需要去除掉
sed 's/\.TAIR10//g' Athaliana_167_TAIR10.gene_exons.gff3 > Ath_1.gff3

## 基于mRNA id对gff3文件进行过滤
perl gff_filter_bymRNAID.pl   Ath_1.gff3    Ath_mRNA.id   geneID_mrnaID.table   Ath_final.gff3

## 重命名蛋白序列和cds序列文件及基因组名称,方便后续使用
mv Athaliana_167_TAIR10.cds_primaryTranscriptOnly.fa   Ath.cds.fa
mv Athaliana_167_TAIR10.protein_primaryTranscriptOnly.fa  Ath.pep.fa
mv Athaliana_167_TAIR9.fa Ath.genome.fa

Ensembl 数据处理

Ensembl 数据库可以下载动物、植物、真菌、细菌等物种基因组数据。数据格式规范,mRNA ID 和 cds ID 基本一致,但没有去除可变剪切的版本,需要自己进行手动处理

示例数据为拟南芥数据,下载自 ensembl.

Arabidopsis_thaliana.TAIR10.47.gff3 # 基因结构文件  
Arabidopsis_thaliana.TAIR10.dna.toplevel.fa # 基因组序列文件 
Arabidopsis_thaliana.TAIR10.cds.all.fa # cds序列文件
Arabidopsis_thaliana.TAIR10.pep.all.fa # 蛋白序列文件

# 去除gff3文件中ID部分多余字符
cp Arabidopsis_thaliana.TAIR10.47.gff3  Ath.gff3.tmp #复制一份
sed -i 's/=gene:/=/g' Ath.gff3.tmp
sed -i 's/=transcript:/=/g'  Ath.gff3.tmp
sed -i 's/=CDS:/=/g'  Ath.gff3.tmp

# 基于gff3提取最长cds序列ID,并过滤gff3文件

perl gff_filter_longest.pl    Ath.gff3.tmp   Ath_gene_mrna_cds.ids  Ath_final.gff3

# 提取最长cds ID列表
awk '{print $3}' Ath_gene_mrna_cds.ids > Ath_mRNA.id

##基于最长cds ID信息提取cds和蛋白质序列文件
seqtk subseq Arabidopsis_thaliana.TAIR10.cds.all.fa Ath_mRNA.id  >  Ath.cds.fasta

seqtk subseq Arabidopsis_thaliana.TAIR10.pep.all.fa Ath_mRNA.id  >  Ath.pep.fasta

#  基因组文件重命名
mv Arabidopsis_thaliana.TAIR10.dna.toplevel.fa Ath.genome.fasta

NCBI及其它数据库的处理有需要的请私信我

#没有cds和蛋白序列的情况
如果没有 cds 和蛋白序列,可以基于 gff 和基因组序列文件使用 gffread进行提取.

gffread Ath_final.gff3 -g Ath.genome.fasta -x Ath.cds.fasta #提取cds序列
gffread Ath_final.gff3 -g Ath.genome.fasta -y Ath.pep.fasta #提取蛋白序列

软件安装

conda安装

用conda安装比对、结构域预测、motif鉴定、进化树构建、多序列比对结果过滤、fasta序列处理工具等等
blast
hmmer
meme
fasttree
trimal
seqkit
gffread
McscanX
JCVI

R包的安装

Peptides #蛋白质等电点和分子量的统计
seqlogo #绘制seqlogo图
pheatmap #绘制热图
msa #多序列比对的R包

windows软件

染色体核型图mapchart
进化树构建 mega

在线软件

进化树美化 https://itol.embl.de/
motif 预测meme MEME - Submission form (meme-suite.org)
基因结构绘制 Gene Structure Display Server 2.0 (gao-lab.org)
顺式作用元件预测 PlantCARE, a database of plant promoters and their cis-acting regulatory elements (ugent.be)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Linux基因家族分析是指对Linux操作系统的源代码进行分析和研究,以了解其演化历史、内部结构、功能特性和开发流程等方面的信息。 Linux是一个开源操作系统,其源代码是公开的,每个人都可以查看、学习和修改。这为研究人员提供了一个独特的机会,可以深入探索Linux系统的底层原理和设计。 首先,分析Linux基因家族可以了解Linux操作系统的演化历史。通过研究Linux不同版本的源代码,我们可以追踪和了解Linux系统的发展过程,从最早的版本到当前的最新版本,逐步了解它的变迁和发展。 其次,分析Linux基因家族有助于了解Linux系统的内部结构和组织方式。Linux是一个模块化的系统,它由许多不同的模块组成,每个模块负责不同的功能。通过分析和研究这些模块之间的关系和交互方式,我们可以深入了解Linux系统的内在机制和工作原理。 此外,分析Linux基因家族还可以揭示Linux系统的特色功能和创新点。在源代码中,我们可以找到许多独特的特性和功能实现,这些特性往往体现了Linux系统的创新和灵活性。通过研究这些特性的实现方式和技术原理,我们可以了解到Linux在各个方面的优势和特色。 最后,分析Linux基因家族还可以深入了解Linux社区的开发流程和文化。Linux作为一个开源项目,依靠全球范围内的开发者和用户共同推进和维护。通过研究Linux社区的合作方式、软件开发流程和代码审查机制等方面的信息,我们可以了解到Linux社区的协作精神和开发理念。 因此,通过对Linux基因家族分析,我们可以从不同的角度深入了解Linux操作系统,揭示其演化历史、内部结构、特色功能和开发流程,为Linux的进一步研究和应用提供重要的参考和指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bioinfor 生信云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值