热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

seqkit根据基因id_基因类型注释根据基因ID就好了

生物信息学数据库种类繁多,其中基因ID是很多人比较困惑的,尤其是很多产品居然还不是基因ID的问题,比如表达芯片是探针,所以我
生物信息学数据库种类繁多,其中基因ID是很多人比较困惑的,尤其是很多产品居然还不是基因ID的问题,比如表达芯片是探针,所以我策划了一系列ID转换教程,见文末!我的包里面有一个函数大家比较感兴趣,就是为什么可以根据基因ID拿到其染色体坐标呢?而且还可以得到其基因类型。

如下所示:

library(AnnoProbe)
IDs <- c("DDX11L1", "MIR6859-1", "OR4G4P", "OR4F5")
ID_type &#61; "SYMBOL"
annoGene(IDs, ID_type)
annoGene(IDs, ID_type,out_file &#61;&#39;tmp.html&#39;)
annoGene(IDs, ID_type,out_file &#61;&#39;tmp.csv&#39;)

你可以指定ID_type&#xff0c;目前只能是选择 "ENSEMBL" or "SYMBOL"&#xff0c;然后这个函数就会为你进行ID转换及坐标&#xff0c;还有基因类型的注释。

0fa268dfd94ed1673f207877c365b3f2.png

需要使用下面的代码自行下载安装我们的AnnoProbe

library(devtools)
install_github("jmzeng1314/AnnoProbe")
library(AnnoProbe)

因为这个包里面并没有加入很多数据&#xff0c;所以理论上会比较容易安装&#xff0c;当然&#xff0c;不排除中国大陆少部分地方基本上连GitHub都无法访问。

我做了哪些事情

其实就是下载GENCODE数据库文件&#xff0c;然后格式化即可。我这里使用的是perl语言&#xff0c;实际上可能是使用R更好&#xff0c;保证这个开发流程的统一。

# https://www.gencodegenes.org/human/
nohup wget ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_32/gencode.v32.annotation.gtf.gz &
# https://www.gencodegenes.org/mouse/
nohup wget ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_mouse/release_M23/gencode.vM23.annotation.gtf.gz &
# https://www.ensembl.org/Rattus_norvegicus/Info/Index
nohup wget ftp://ftp.ensembl.org/pub/release-98/gtf/rattus_norvegicus/Rattus_norvegicus.Rnor_6.0.98.chr.gtf.gz & zcat gencode.v32.annotation.gtf.gz |perl -alne &#39;{next unless $F[1] eq "HAVANA";next unless $F[2] eq "gene";/gene_id "(.*?).d&#43;.*?"; gene_type "(.*?)"; gene_name "(.*?)"/;print "$3t$2t$1t$F[0]t$F[3]t$F[4]"}&#39; > human_gencode.v32.txt
zcat gencode.vM23.annotation.gtf.gz |perl -alne &#39;{next unless $F[1] eq "HAVANA";next unless $F[2] eq "gene";/gene_id "(.*?).d&#43;.*?"; gene_type "(.*?)"; gene_name "(.*?)"/;print "$3t$2t$1t$F[0]t$F[3]t$F[4]"}&#39; > mouse_gencode.vM23.txtzcat Rattus_norvegicus.Rnor_6.0.98.chr.gtf.gz |perl -alne &#39;{next unless $F[2] eq "gene";/gene_id "(.*?)";.*?gene_name "(.*?)";.*?gene_biotype "(.*?)";/;print "$2t$3t$1t$F[0]t$F[3]t$F[4]"}&#39; > rat_ensembl_6.0.98.txt

得到的文件如下&#xff1a;

53004 human_gencode.v32.txt
48961 mouse_gencode.vM23.txt
32623 rat_ensembl_6.0.98.txt

这些就加载到R包里面&#xff0c;有了这些数据源&#xff0c;就可以很轻松的进行基因ID转换或者注释了。

表达芯片探针ID转换大全

在2019年的尾巴&#xff0c;我推出3个R包&#xff0c;

  • 第一个是整合全部的bioconductor里面的芯片探针注释包。
  • 第二个是整合全部GPL的soft文件里面的芯片探针注释包。
  • 第三个是下载全部的GPL的soft文件里面的探针碱基序列比对后注释包。

配合着详细的介绍&#xff1a;

  • 第三个万能芯片探针ID注释平台R包
  • 第二个万能芯片探针ID注释平台R包
  • 第一个万能芯片探针ID注释平台R包
  • GEO数据库中国区镜像横空出世

因为这些包暂时托管在GitHub平台&#xff0c;但是非常多的朋友访问GitHub困难&#xff0c;尤其是我打包了好几百个GPL平台的注释信息后&#xff0c; 我的GitHub包变得非常臃肿&#xff0c;大家下载安装困难&#xff0c;所以我重新写一个精简包&#xff0c;也在&#xff1a;芯片探针ID的基因注释以前很麻烦 和 &#xff1a;芯片探针序列的基因注释已经无需你自己亲自做了, 里面详细介绍了。最重要的是idmap函数&#xff0c;安装方法说到过&#xff1a;芯片探针序列的基因注释已经无需你自己亲自做了, 使用起来也非常简单&#xff1a;

library(AnnoProbe)
ids&#61;idmap(&#39;GPL570&#39;,type &#61; &#39;soft&#39;)
head(ids)

仅仅是一句话&#xff0c;就拿到了这个平台的探针的注释信息。需要注意的是&#xff0c;这个函数的type参数&#xff0c;其实是有3个选择&#xff0c;这里我演示的是选择soft这个来源的基因注释信息。

并不是所有的平台都是有soft注释&#xff0c;也不是所有的平台都被我的这个工具囊括哦。



推荐阅读
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • 使用在线工具jsonschema2pojo根据json生成java对象
    本文介绍了使用在线工具jsonschema2pojo根据json生成java对象的方法。通过该工具,用户只需将json字符串复制到输入框中,即可自动将其转换成java对象。该工具还能解析列表式的json数据,并将嵌套在内层的对象也解析出来。本文以请求github的api为例,展示了使用该工具的步骤和效果。 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 解决VS写C#项目导入MySQL数据源报错“You have a usable connection already”问题的正确方法
    本文介绍了在VS写C#项目导入MySQL数据源时出现报错“You have a usable connection already”的问题,并给出了正确的解决方法。详细描述了问题的出现情况和报错信息,并提供了解决该问题的步骤和注意事项。 ... [详细]
  • 本文详细介绍了MySQL表分区的创建、增加和删除方法,包括查看分区数据量和全库数据量的方法。欢迎大家阅读并给予点评。 ... [详细]
  • 闭包一直是Java社区中争论不断的话题,很多语言都支持闭包这个语言特性,闭包定义了一个依赖于外部环境的自由变量的函数,这个函数能够访问外部环境的变量。本文以JavaScript的一个闭包为例,介绍了闭包的定义和特性。 ... [详细]
  • CentOS 6.5安装VMware Tools及共享文件夹显示问题解决方法
    本文介绍了在CentOS 6.5上安装VMware Tools及解决共享文件夹显示问题的方法。包括清空CD/DVD使用的ISO镜像文件、创建挂载目录、改变光驱设备的读写权限等步骤。最后给出了拷贝解压VMware Tools的操作。 ... [详细]
author-avatar
mobiledu2502884553
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有