使用集合映射和關聯關系映射_使用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.pswp.cn/news/392319.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/392319.shtml
英文地址,請注明出處:http://en.pswp.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…