使用集合映射和关联关系映射_使用R进行基因ID映射

使用集合映射和关联关系映射

Inter-conversion of gene ID’s is the most important aspect enabling genomic and proteomic data analysis. There are multiple tools available each with its own drawbacks. While performing enrichment analysis on Mass Spectrometry datasets, I had always struggled to prepare the input files required for each of the packages in R. It takes some data tweaking and cleanup to enable the R tools or packages to accept them as an input. The struggle is more in case of UniProt id’s as very few applications accept them as input. Although UniProt provides the retrieve id mapping function, it does not take into account the number of rows which means any protein or gene id which cannot be mapped is simply omitted from the output file. This makes combining the datasets difficult.

基因ID的相互转换是实现基因组和蛋白质组数据分析的最重要方面。 有多种可用的工具,每种工具都有其自身的缺点。 在对质谱数据集进行富集分析时,我一直在努力准备R中每个程序包所需的输入文件。需要进行一些数据调整和清理,以使R工具或程序包可以将它们作为输入来接受。 在UniProt id的情况下,斗争更加艰巨,因为很少有应用程序接受它们作为输入。 尽管UniProt提供了检索ID映射功能,但它没有考虑行数,这意味着从输出文件中会省略掉无法映射的任何蛋白质或基因ID。 这使得难以合并数据集。

There are numerous tools available for such kind of ID mapping. Here I am laying out a few R packages that I have used and worked smoothly.

有许多工具可用于此类ID映射。 在这里,我将介绍一些我使用和顺利工作过的R软件包。

  1. AnnotationDbi package

    AnnotationDbi包

The org.Hs.eg.db package or the org.Mm.eg.db package is to be used for human and mice respectively. mapIds can take any input form like UniProt id, HGNC symbol, Ensembl id and Entrez id and interconvert them.

org.Hs.eg.db软件包或org.Mm.eg.db软件包将分别用于人类和小鼠。 mapId可以采用任何输入形式,例如UniProt ID,HGNC符号,Ensembl ID和Entrez ID并相互转换。

library(‘org.Mm.eg.db’)ensembl<-mapIds(org.Mm.eg.db, keys=rownames(df), column=’ENSEMBL’, keytype=’SYMBOL’, multiVals=”first”)entrez<-mapIds(org.Mm.eg.db, keys=rownames(df), column=’ENTREZID’, keytype=’SYMBOL’, multiVals=”first”)entrez<-mapIds(org.Mm.eg.db, keys=rownames(df), column=’UNIPROT’, keytype=’SYMBOL’, multiVals=”first”)

mapIds() returns a named vector of id’s.

mapIds() 返回id的命名向量。

The output can be merged to the original dataset using `cbind` for further downstream analysis. The one advantage that I have noticed with mapIds is that it matches the gene id’s row by row and inserts NA when it can’t find gene names or symbols for certain UniProt id’s. This is a huge lifesaver when working with huge datasets.

可以使用`cbind`将输出合并到原始数据集中以进行进一步的下游分析。 我用mapIds注意到的一个优点是,它与基因ID的行匹配,并且在找不到某些UniProt ID的基因名称或符号时插入NA。 当使用庞大的数据集时,这是一个巨大的救星。

2. biomaRt package

2.生物材料包装

require(biomaRt)mart<-useMart(biomart = “ensembl”, dataset =  “mmusculus_gene_ensembl”)mart <- useDataset(dataset=”mmusculus_gene_ensembl”, mart=mart)mapping <-  getBM(attributes=c(“mgi_symbol”,”ensembl_gene_id”,”entrezgene_id”), filters = “mgi_symbol”, mart=mart, values=data, uniqueRows=TRUE, bmHeader = T)

For human hgnc_symbol and for mouse mgi_symbol is to be used.

对于人类hgnc_symbol和对于小鼠, mgi_symbol将被使用。

Generally, with biomaRt, extra work is required after you perform the initial mapping. You will note that biomaRt does not even return the genes in the same order in which they were submitted.

通常,对于biomaRt ,执行初始映射后需要额外的工作。 您会注意到, biomaRt甚至不按提交基因的顺序返回基因。

3. bitr from ClusterProfiler package

3.从ClusterProfiler包中获取bitr

The ClusterProfiler package was developed by Guangchuang Yu for statistical analysis and visualization of functional profiles for genes and gene clusters. The org.Hs.eg.db or the org.Mm.eg.db package is to be used for human and mice respectively. The key types can be obtained by typing keytypes(org.Mm.eg.db).

ClusterProfiler软件包由Yu Guangchuang Yu开发,用于统计分析和可视化基因和基因簇的功能概况。 org.Hs.eg.dborg.Mm.eg.db包将分别用于人类和小鼠。 可以通过键入keytypes(org.Mm.eg.db)获得密钥类型。

bitr(geneID, fromType, toType, OrgDb, drop = TRUE)ids <- bitr(data, fromType=”SYMBOL”, toType=c(“UNIPROT”, “ENSEMBL”, “ENTREZID”), OrgDb=”org.Mm.eg.db”)

Apart from the R functions listed above there are various tools for gene ID conversion like DAVID, UCSC gene ID converter etc. for non-programmers.

除了上面列出的R函数外,还有各种用于基因ID转换的工具,例如DAVID,UCSC基因ID转换器等,用于非编程人员。

翻译自: https://medium.com/computational-biology/gene-id-mapping-using-r-14ff50eec9ba

使用集合映射和关联关系映射

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

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

相关文章

leetcode 1018. 可被 5 整除的二进制前缀

给定由若干 0 和 1 组成的数组 A。我们定义 N_i&#xff1a;从 A[0] 到 A[i] 的第 i 个子数组被解释为一个二进制数&#xff08;从最高有效位到最低有效位&#xff09;。 返回布尔值列表 answer&#xff0c;只有当 N_i 可以被 5 整除时&#xff0c;答案 answer[i] 为 true&…

纯java应用搭建,16、BoneCp纯java项目使用

2、代码实现 package com.study;import com.jolbox.bonecp.BoneCP;import com.jolbox.bonecp.BoneCPConfig;import com.jolbox.bonecp.BoneCPDataSource;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.sql.*;/*** Boncp 纯java处理* CreateTime 2018/3/…

数据结构与算法深入学习_我最喜欢的免费课程,用于深入学习数据结构和算法...

数据结构与算法深入学习by javinpaul由javinpaul Data structures and algorithms are some of the most essential topics for programmers, both to get a job and to do well on a job. Good knowledge of data structures and algorithms is the foundation of writing go…

RabbitMQ学习系列(一): 介绍

1、介绍 RabbitMQ是一个由erlang开发的基于AMQP&#xff08;Advanced Message Queue &#xff09;协议的开源实现。用于在分布式系统中存储转发消息&#xff0c;在易用性、扩展性、高可用性等方面都非常的优秀。是当前最主流的消息中间件之一。 RabbitMQ的官网&#xff1a;http…

详尽kmp_详尽的分步指南,用于数据准备

详尽kmp表中的内容 (Table of Content) Introduction 介绍 What is Data Preparation 什么是数据准备 Exploratory Data Analysis (EDA) 探索性数据分析(EDA) Data Preprocessing 数据预处理 Data Splitting 数据分割 介绍 (Introduction) Before we get into this, I want to …

leetcode 947. 移除最多的同行或同列石头(dfs)

n 块石头放置在二维平面中的一些整数坐标点上。每个坐标点上最多只能有一块石头。 如果一块石头的 同行或者同列 上有其他石头存在&#xff0c;那么就可以移除这块石头。 给你一个长度为 n 的数组 stones &#xff0c;其中 stones[i] [xi, yi] 表示第 i 块石头的位置&#x…

matlab距离保护程序,基于MATLAB的距离保护仿真.doc

基于MATLAB的距离保护仿真摘要&#xff1a;本文阐述了如何利用Matlab中的Simulink及SPS工具箱建立线路的距离保护仿真模型&#xff0c;并用S函数编制相间距离保护和接地距离保护算法程序&#xff0c;构建相应的保护模块&#xff0c;实现了三段式距离保护。仿真结果表明&#xf…

ZOJ3385 - Hanami Party (贪心)

题目链接&#xff1a; http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode3385 题目大意&#xff1a; 妖梦要准备一个party&#xff0c;所以需要许多食物&#xff0c;初始化妖梦的烹饪技能为L&#xff0c;每天妖梦有两种选择&#xff0c;一是选择当天做L个食物&am…

sklearn.fit_两个小时后仍在运行吗? 如何控制您的sklearn.fit。

sklearn.fitby Nathan Toubiana内森图比亚纳(Nathan Toubiana) 两个小时后仍在运行吗&#xff1f; 如何控制您的sklearn.fit (Two hours later and still running? How to keep your sklearn.fit under control) Written by Gabriel Lerner and Nathan Toubiana加布里埃尔勒纳…

RabbitMQ学习系列(二): RabbitMQ安装与配置

1&#xff0e;安装 Rabbit MQ 是建立在强大的Erlang OTP平台上&#xff0c;因此安装RabbitMQ之前要先安装Erlang。 erlang&#xff1a;http://www.erlang.org/download.html rabbitmq&#xff1a;http://www.rabbitmq.com/download.html 注意&#xff1a; 1.现在先别装最新的 3…

帝国CMS浅浅滴谈一下——博客园老牛大讲堂

封笔多月之后&#xff0c;工作中遇到了很多很多的问题&#xff0c;也解决了一些问题&#xff0c;下面我把一些得出的经验&#xff0c;分享给大家&#xff01; 会帝国cms的请离开&#xff0c;这篇文章对你没什么用 1、什么是帝国CMS&#xff1f;---博客园老牛大讲堂 多月之前&am…

matlab cdf,Matlab 简单计算PDF和CDF | 学步园

通信的魅力就是在于随机性中蕴含的确定性&#xff0c;这也就是为什么你随便拿出一本通信方面的教材&#xff0c;前面几章都会大篇幅的讲解随机过程&#xff0c;随机过程也是研究生必须深入了解的一门课&#xff0c;特别是对于信号处理以及通信专业的学生。在实际工作中&#xf…

leetcode 1232. 缀点成线

在一个 XY 坐标系中有一些点&#xff0c;我们用数组 coordinates 来分别记录它们的坐标&#xff0c;其中 coordinates[i] [x, y] 表示横坐标为 x、纵坐标为 y 的点。 请你来判断&#xff0c;这些点是否在该坐标系中属于同一条直线上&#xff0c;是则返回 true&#xff0c;否则…

mysql常用操作(一)

【数据库设计的三大范式】1、第一范式&#xff08;1NF&#xff09;&#xff1a;数据表中的每一列&#xff0c;必须是不可拆分的最小单元。也就是确保每一列的原子性。 例如&#xff1a;userInfo:山东省烟台市 18865518189 应拆分成 userAds山东省烟台市 userTel188655181892、第…

pmp 成本估算准确高_如何更准确地估算JavaScript中文章的阅读时间

pmp 成本估算准确高by Pritish Vaidya通过Pritish Vaidya 准确估算JavaScript中篇文章的阅读时间 (Accurate estimation of read time for Medium articles in JavaScript) 介绍 (Introduction) Read Time Estimate is the estimation of the time taken by the reader to rea…

Android数据适配-ExpandableListView

Android中ListView的用法基本上学的时候都会使用&#xff0c;其中可以使用ArrayAdapter&#xff0c;SimpleAdapter&#xff0c;BaseAdapter去实现&#xff0c;这次主要使用的ExpandableListView展示一种两层的效果&#xff0c;ExpandableListView是android中可以实现下拉list的…

JavaWeb 命名规则

命名规范命名规范命名规范命名规范 本规范主要针对java开发制定的规范项目命名项目命名项目命名项目命名 项目创建&#xff0c;名称所有字母均小写&#xff0c;组合方式为&#xff1a;com.company.projectName.component.hiberarchy。1. projectName&#xff1a;项目名称2. com…

多元概率密度_利用多元论把握事件概率

多元概率密度Humans have plenty of cognitive strengths, but one area that most of us struggle with is estimating, explaining and preparing for improbable events. This theme underpins two of Nassim Taleb’s major works: Fooled by Randomness and The Black Swa…

nginx php访问日志配置,nginx php-fpm 输出php错误日志的配置方法

由于nginx仅是一个web服务器&#xff0c;因此nginx的access日志只有对访问页面的记录&#xff0c;不会有php 的 error log信息。nginx把对php的请求发给php-fpm fastcgi进程来处理&#xff0c;默认的php-fpm只会输出php-fpm的错误信息&#xff0c;在php-fpm的errors log里也看不…

阿里的技术愿景_技术技能的另一面:领域知识和长期愿景

阿里的技术愿景by Sihui Huang黄思慧 技术技能的另一面&#xff1a;领域知识和长期愿景 (The other side of technical skill: domain knowledge and long-term vision) When we first start our careers as software engineers, we tend to focus on improving our coding sk…