R package org.Hs.eg.db to convert gene id

文章目录

  • install
  • 使用org.Hs.egENSEMBL将Ensembl id convert to gene id
  • org.Hs.egGENENAME 将Ensembl id convert to gene name
  • org.Hs.egSYMBOL 将 gene symbol convert to gene id
  • 我现在有一些ensembl id 如何转为 gene name
  • 注意
  • 你会遇到一些record不全的情况,gtf文件存在而org.Hs.eg.db不存在

install

# install 
# if (!require("BiocManager", quietly = TRUE))
#     install.packages("BiocManager")# BiocManager::install("AnnotationDbi")
# BiocManager::install("org.Hs.eg.db")# or install # wget https://www.bioconductor.org/packages/release/bioc/src/contrib/AnnotationDbi_1.62.2.tar.gz
# install.packages("/public/home/djs/software/AnnotationDbi_1.62.2.tar.gz", repos = NULL, type="source")
# wget https://www.bioconductor.org/packages/release/data/annotation/src/contrib/org.Hs.eg.db_3.17.0.tar.gz
# install.packages("/public/home/djs/software/org.Hs.eg.db_3.17.0.tar.gz", repos = NULL, type="source")
library(org.Hs.eg.db)help(package="org.Hs.eg.db")
Index:org.Hs.eg.db            Bioconductor annotation data package
org.Hs.egACCNUM         Map Entrez Gene identifiers to GenBank Accession Numbers
org.Hs.egALIAS2EG       Map between Common Gene Symbol Identifiers and Entrez Gene
org.Hs.egCHR            Map Entrez Gene IDs to Chromosomes
org.Hs.egCHRLENGTHS     A named vector for the length of each of the chromosomes
org.Hs.egCHRLOC         Entrez Gene IDs to Chromosomal Location
org.Hs.egENSEMBL        Map Ensembl gene accession numbers with Entrez Gene identifiers
org.Hs.egENSEMBLPROT    Map Ensembl protein acession numbers with Entrez Gene identifiers
org.Hs.egENSEMBLTRANS   Map Ensembl transcript acession numbers with Entrez Gene identifiers
org.Hs.egENZYME         Map between Entrez Gene IDs and Enzyme Commission (EC) Numbers
org.Hs.egGENENAME       Map between Entrez Gene IDs and Genes
org.Hs.egGENETYPE       Map between Entrez Gene Identifiers and Gene Type
org.Hs.egGO             Maps between Entrez Gene IDs and Gene Ontology (GO) IDs
org.Hs.egMAP            Map between Entrez Gene Identifiers and cytogenetic maps/bands
org.Hs.egMAPCOUNTS      Number of mapped keys for the maps in package org.Hs.eg.db
org.Hs.egOMIM           Map between Entrez Gene Identifiers and Mendelian Inheritance in Man (MIM) identifiers
org.Hs.egORGANISM       The Organism for org.Hs.eg
org.Hs.egPATH           Mappings between Entrez Gene identifiers and KEGG pathway identifiers
org.Hs.egPFAM           Maps between Manufacturer Identifiers and PFAM  Identifiers
org.Hs.egPMID           Map between Entrez Gene Identifiers and PubMed  Identifiers
org.Hs.egPROSITE        Maps between Manufacturer Identifiers and  PROSITE Identifiers
org.Hs.egREFSEQ         Map between Entrez Gene Identifiers and RefSeq  Identifiers
org.Hs.egSYMBOL         Map between Entrez Gene Identifiers and Gene  Symbols
org.Hs.egUNIPROT        Map Uniprot accession numbers with Entrez Gene  identifiers
org.Hs.eg_dbconn        Collect information about the package  annotation DB

使用org.Hs.egENSEMBL将Ensembl id convert to gene id

x <- org.Hs.egENSEMBL
# Get the entrez gene IDs that are mapped to an Ensembl ID
mapped_genes <- mappedkeys(x)
# Convert to a list
xx <- as.list(x[mapped_genes])xx[1:5]  # entrez gene id 是list的索引名字,list的元素则是 ensembl id

在这里插入图片描述

org.Hs.egGENENAME 将Ensembl id convert to gene name

x <- org.Hs.egGENENAME
# Get the gene names that are mapped to an entrez gene identifier
mapped_genes <- mappedkeys(x)
# Convert to a list
xx <- as.list(x[mapped_genes])

在这里插入图片描述

org.Hs.egSYMBOL 将 gene symbol convert to gene id

x <- org.Hs.egSYMBOL
# Get the gene symbol that are mapped to an entrez gene identifiers
mapped_genes <- mappedkeys(x)
# Convert to a list
xx <- as.list(x[mapped_genes])# For the reverse map:
x <- org.Hs.egSYMBOL2EG
# Get the entrez gene identifiers that are mapped to a gene symbol
mapped_genes <- mappedkeys(x)
# Convert to a list
xx <- as.list(x[mapped_genes])

在这里插入图片描述

我现在有一些ensembl id 如何转为 gene name

# 将 ensembl id 单独拿出来
k <- keys(org.Hs.eg.db,keytype = "ENSEMBL")
# 然后根据 ensembl id 调出来entrez gene id 和 gene symbol
list <- select(org.Hs.eg.db,keys=k,columns = c("ENTREZID","SYMBOL"), keytype="ENSEMBL")# 或者使用你自己的 ensembl id 作为keys
list <- select(org.Hs.eg.db,keys=ID,columns = c("ENTREZID","SYMBOL"), keytype="ENSEMBL")head(list,5)

在这里插入图片描述

# 此处的 ensembl ID就是你个性化的id,我这里直接抽样得到然后用于演示
ID <- sample(list$ENSEMBL,10) 
ID_list <- list[match(ID,list[,"ENSEMBL"]),]
ID_list

在这里插入图片描述

注意

这些ID对应关系随着不同数据库的升级和维护有可能出现前后不对应的情况。
同时这些ID 也不是一一对应的关系,可能存在一对多或者多对一的关系。
在这里插入图片描述

你会遇到一些record不全的情况,gtf文件存在而org.Hs.eg.db不存在

gtf存在 61544个基因
在这里插入图片描述

x <- org.Hs.egENSEMBLsum(is.na(unlist(as.list(x))))
[1] 105167
sum(!is.na(unlist(as.list(x))))
[1] 45727
# org.Hs.egENSEMBL 只有45727 个record

自己找个gtf文件然后提取信息再做转化吧

cat gencode.v40.annotation.gtf |awk 'BEGIN{FS=="\t"} $3~/gene/{print $0}' |cut -f 9 | cut -d ";" -f1,3 |cut -d " " -f2,4 |sed 's/\..*;//g' |sed 's/"//g' > ENSEMBL_TO_GENE.txt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/47056.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

商业智能BI是什么都不明白,如何实现数字化?

2021年下半年中国商业智能软件市场规模为4.8亿美元&#xff0c;2021年度市场规模达到7.8亿美元&#xff0c;同比增长34.9%&#xff0c;呈现飞速增长的趋势。数字化时代&#xff0c;商业智能BI对于企业的落地应用有着巨大价值&#xff0c;逐渐成为了现代企业信息化、数字化转型中…

怎么借助ChatGPT处理数据结构的问题

目录 使用ChatGPT进行数据格式化转换 代码示例 ChatGPT格式化数据提示语 代码示例 批量格式化数据提示语 代码示例 ChatGPT生成的格式化批处理代码 使用ChatGPT合并不同数据源的数据 合并数据提示语 自动合并数据提示语 ChatGPT生成的自动合并代码 结论 数据合并是…

在Windows下安装PIP+Phantomjs+Selenium

最近准备深入学习Python相关的爬虫知识了&#xff0c;如果说在使用Python爬取相对正规的网页使用"urllib2 BeautifulSoup 正则表达式"就能搞定的话&#xff1b;那么动态生成的信息页面&#xff0c;如Ajax、JavaScript等就需要通过"Phantomjs CasperJS Selen…

【从零开始的rust web开发之路 二】axum中间件和共享状态使用

系列文章目录 第一章 axum学习使用 第二章 axum中间件使用 文章目录 系列文章目录前言一、中间件是什么二、中间件使用常用中间件使用中间件使用TraceLayer中间件实现请求日志打印自定义中间件 共享状态 前言 上篇文件讲了路由和参数相应相关的。axum还有个关键的地方是中间件…

电工-学习电工有哪些好处

学习电工有哪些好处&#xff1f;在哪学习电工&#xff1f; 学习电工有哪些好处&#xff1f;在哪学习电工&#xff1f;学习电工可以做什么&#xff1f;优势有哪些&#xff1f; 学习电工可以做什么&#xff1f;学习电工有哪些好处&#xff1f; 就业去向&#xff1a;可在企业单位…

基于微信小程序的垃圾分类系统设计与实现(2.0 版本,附前后端代码)

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 1 简介 视频演示地址&#xff1a; 基于微信小程序的智能垃圾分类回收系统&#xff0c;可作为毕业设计 小…

PyCharm PyQt5 开发环境搭建

环境 python&#xff1a;3.6.x PyCharm&#xff1a;PyCharm 2019.3.5 (Community Edition) 安装PyQT5 pip install PyQt5 -i https://pypi.douban.com/simplepip install PyQt5-tools -i https://pypi.douban.com/simple配置PyCharm PyQtUIC Program &#xff1a;D:\Pytho…

Android kotlin 跳转手机热点开关页面和判断热点是否打开

Android kotlin 跳转手机热点开关页面和判断热点是否打开 判断热点是否打开跳转手机热点开关页面顺带介绍一些其他常用的设置页面跳转 其他热点的一些相关知识Local-only hotspot 参考 判断热点是否打开 网上方法比较多&#xff0c;我这边使用了通过WifiManager 拿反射的getWi…

从C语言到C++_33(C++11_上)initializer_list+右值引用+完美转发+移动构造/赋值

目录 1. 列表初始化initializer_list 2. 前面提到的一些知识点 2.1 小语法 2.2 STL中的一些变化 3. 右值和右值引用 3.1 右值和右值引用概念 3.2 右值引用类型的左值属性 3.3 左值引用与右值引用比较 3.4 右值引用的使用场景 3.4.1 左值引用的功能和短板 3.4.2 移动…

【javaweb】学习日记Day3 - Ajax 前后端分离开发 入门

目录 一、Ajax 1、简介 2、Axios &#xff08;没懂 暂留&#xff09; &#xff08;1&#xff09;请求方式别名 &#xff08;2&#xff09;发送get请求 &#xff08;3&#xff09;发送post请求 &#xff08;4&#xff09;案例 二、前端工程化 1、Vue项目-目录结构 2、…

第10步---MySQL的日志操作

第10步---MySQL的日志操作 错误日志 慢日志 1.查看错误日志 -- 查看日志信息 show VARIABLES like log_error%;2.查看binlog 高版本是默认开启的&#xff0c;低的是默认是不开启的 binlog日志文件是与事务相关 -- 查看binlog日志的格式 show variables like binlog_format;-- …

【Python机器学习】实验15 将Lenet5应用于Cifar10数据集(PyTorch实现)

文章目录 CIFAR10数据集介绍1. 数据的下载2.修改模型与前面的参数设置保持一致3. 新建模型4. 从数据集中分批量读取数据5. 定义损失函数6. 定义优化器7. 开始训练8.测试模型 9. 手写体图片的可视化10. 多幅图片的可视化 思考题11. 读取测试集的图片预测值&#xff08;神经网络的…

qt中窗口的布局

qt中窗口的布局 常用的窗口布局方式使用拖拽控件的方式调用窗口布局使用Widget控件完成窗口布局布局中嵌套布局demo&#xff08;制作登录页面&#xff09; 如果不使用窗口布局&#xff0c;会带来的后果&#xff1a; 控件可能显示不出来不能按照期望的大小显示不能跟随窗口进行…

如何最简单、通俗地理解什么是机器学习?

那就究竟什么是学习呢?诺贝尔经济学奖和图灵奖双料得主、卡耐基梅隆大学的赫伯特 西蒙 (Herbert Simon) 教授是这样定义的&#xff1a;“学习是系统通过经验提升性能的过程”。可以看到&#xff0c;学习是一个过程&#xff0c;并且这里有3个关键词&#xff0c;即经验、提升和…

CSS中如何实现文字溢出省略号(text-overflow: ellipsis)效果?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ CSS中如何实现文字溢出省略号&#xff08;text-overflow: ellipsis&#xff09;效果&#xff1f;⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 …

【云原生,k8s】Helm应用包管理器介绍

目录 一、为什么需要Helm&#xff1f; &#xff08;一&#xff09;Helm介绍 &#xff08;二&#xff09;Helm有3个重要概念&#xff1a; &#xff08;三&#xff09;Helm特点 二、Helm V3变化 &#xff08;一&#xff09;架构变化 &#xff08;二&#xff09;自动创建名…

STM32L151C8T6 芯片数据手册

1. 芯片型号含义 2. Flash&#xff1a; 64KB 3. keil 配置ST-Link 烧录程序 4. keil 选择Flash 烧录算法 5. 系统主频 32Mhz 6. 时钟树 clock tree

嵌入式系统常用的开发板

今天&#xff0c;了解一下常用的开发板&#xff0c;像stm32是最近了解的&#xff0c;esp8266系列是之前大三下上物联网导论课程时候接触的&#xff0c;一些树莓派&#xff0c;Arduino听说过&#xff0c;但了解不多。

ElasticSearch 7.4学习记录(DSL语法)

上文和大家一起初次了解了很多ES相关的基础知识&#xff0c;本文的内容将会是实际企业中所需要的吗&#xff0c;也是我们需要熟练应用的内容。 面对ES&#xff0c;我们最多使用的就是查询&#xff0c;当我负责这个业务时&#xff0c;现不需要我去考虑如何创建索引&#xff0c;添…

Go:测试框架GoConvey 简介

快速开始 GoConvey是一个完全兼容官方Go Test的测试框架&#xff0c;一般来说这种第三方库都比官方的功能要强大、更加易于使用、开发效率更高&#xff0c;闲话少说&#xff0c;先看一个example&#xff1a; package utils import (. "github.com/smartystreets/goconvey…