与ensembl参考基因组元数据的python接口

pyensembl的Python项目详细描述


构建状态coverage statuspypi

Pyensembl

pyensembl是一个python接口,用于引用基因组元数据,如外显子和转录本。pyensembl从ensembl ftp服务器下载gtf和fasta文件并将其加载到本地数据库中。Pyensembl还可以使用用户提供的GTF和FASTA文件指定的自定义参考数据。

示例用法

frompyensemblimportEnsemblRelease# release 77 uses human reference genome GRCh38data=EnsemblRelease(77)# will return ['HLA-A']gene_names=data.gene_names_at_locus(contig=6,position=29945884)# get all exons associated with HLA-Aexon_ids=data.exon_ids_of_gene_name('HLA-A')

安装

您可以使用pip安装pyensembl

pip install pyensembl

这也应该安装任何必需的软件包,例如datacache biopython

在使用pyensembl之前,运行以下命令下载并安装 ENSEMBL数据:

pyensembl install --release <list of Ensembl release numbers> --species <species-name>

例如,pyensembl install--release 7576--species human将下载并安装所有 来自ENSEMBL的人体参考数据发布75和76。

或者,可以从python内部创建ensemblelease对象 处理并调用ensembl_object.download()然后调用ensembl_object.index()

缓存位置

默认情况下,pyensembl使用特定于平台的cache文件夹 并将文件缓存到pyensembl子目录中。 您可以通过设置环境键pyensembl_cache_dir来覆盖此默认值 作为您的首选缓存位置:

exportPYENSEMBL_CACHE_DIR=/custom/cache/dir

importosos.environ['PYENSEMBL_CACHE_DIR']='/custom/cache/dir'# ... PyEnsembl API usage

非集成数据

Pyensembl还允许通过规范任意基因组 到ensembl和非ensembl gtf的本地文件路径或远程url的 和fasta文件。(警告:GTF格式可能不同,并且处理 非ENSEMBL数据仍在开发中。)

例如:

data=Genome(reference_name='GRCh38',annotation_name='my_genome_features',gtf_path_or_url='/My/local/gtf/path_to_my_genome_features.gtf')# parse GTF and construct database of genomic featuresdata.index()gene_names=data.gene_names_at_locus(contig=6,position=29945884)

API

ensemblelease对象有方法允许您访问所有可能的 注释特征的组合基因名基因id转录名转录ID外显子ID以及 这些基因组元素(续,起始位置,终止位置,链)。

基因

< DL>
基因(contig=none,strand=none)
返回基因对象的列表,可选地限制为特定的contig 或钢绞线。
位于u位点的基因(contig,position,end=none,strand=none)
返回一个与contig上的特定位置重叠的基因对象列表, (可选)使用end参数扩展到一个范围并限制为 向前或向后的钢绞线,通过传递钢绞线="+"或钢绞线="-"。
按ID排序的基因(Gene ID)
返回给定ENSEMBL基因ID的基因对象(例如"ensg0000068793")。
基因名(contig=none,strand=none)
全部返回注释数据库中的基因名,可选限制 到一个特定的容器或钢绞线。
基因按名称(基因名称)
获取具有给定名称的所有unqiue基因(可能有多个 由于基因组中有拷贝),返回包含每个 不同的ID。
基因与蛋白质(蛋白质)
找到与给定的ensembl蛋白id相关的基因(例如"ensp0000350283")
基因名在基因座(contig,position,end=none,strand=none)
与给定位点重叠的基因的名称,可选地受链限制。 (返回一个列表以说明重叠的基因)
基因ID的基因名称(基因ID)
返回具有给定genen id的基因的名称。
转录本id(转录本id)的基因名
返回与给定转录本id相关的基因的名称。
基因名(转录名)
返回与给定转录本名称相关的基因的名称。
外显子id(外显子id)的基因名
返回与给定外显子id相关的基因的名称。
基因(contig=无,strand=无)
返回注释数据库中的所有基因ID,可选地受 染色体名称或链。
基因名称的基因ID(基因名称)
返回具有给定名称的所有Ensembl基因ID。

成绩单

< DL>
转录本(contig=none,strand=none)
返回 Ensembl数据库,可选地限制在特定的contig或strand。
按ID转录(转录ID)
为给定的ensembl转录id(例如"enst0000369985")构造一个转录对象
按姓名抄写(抄写姓名)
返回与给定名称匹配的每个转录的转录对象列表。
转录名称(contig=none,strand=none)
返回注释数据库中的所有转录本名称。
转录ID(contig=none,strand=none)
返回注释数据库中的所有转录ID。
基因id(gene id)的转录id
返回与给定基因id相关的所有转录本的id。
基因名(基因名)的转录ID
返回与给定基因名相关的所有转录本的ID。
转录名称(转录名称)
查找具有给定名称的所有Ensembl转录ID。
外显子id的转录本id(外显子id)
返回与给定外显子id相关联的所有转录本的id。

外显子

< DL>
外显子id(contig=none,strand=none)
返回注释数据库中的外显子id列表,可以选择受限制 通过给定的染色体和链。
基因id的外显子id(基因id)
返回与给定基因id相关联的外显子id列表。
基因名的外显子id(基因名)
返回与给定基因名相关联的外显子ID列表。
转录id的外显子id(转录id)
返回与给定转录ID相关联的外显子ID列表。
转录名的外显子id(转录名)
返回与给定转录本名称相关联的外显子ID列表。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java是否存在这样一种场景:Java7的Hashmap实现优于Java8的实现   java如何打印这些完整的数组?   java BuildException:未能执行aapt   java如何使用类。未知类型的集合返回的cast()   java准备语句返回错误的值   webview 安卓中的java显示身份验证对话框   java如何重命名列名JPA Hibernate   java查询从特定用户和特定时间段的Oracle表(通过比较原始表和备份表)中选择修改的行   java Youtube视频仅在三星S6设备上加载时自动暂停   未调用java RecyclerView getItemViewType   使用JSch setCommand执行带有源选项的java Shell ping命令时失败   java Hibernate:无法删除|删除分离的实例   Java Spring@MappedSuperclass字段作为子类中的@Id字段   java Android:确定单击了哪个按钮,因为该按钮未在xml中定义   如何计算java阵列内存使用率   使用Java查找按字母顺序排列的第一个字符串   javascript注销功能刷新页面,但页面仍已登录   当接口作为参数提供时,java依赖项注入不起作用   java中带原语的字符串扭曲