R包:disgenet2r|DisGeNET的懒癌福利,一行代码多种可视化

简介: DisGeNET是一个综合性的数据库,包含大量关于人类基因和疾病关联的信息,常用于生物信息学和基因组学研究。disgenet2r是R语言工具,方便用户访问和分析DisGeNET数据。用户需注册DisGeNET账号并安装R包,通过disgenet2r包可查询、检索基因-疾病关联和变异-疾病关联数据。目前DisGeNET包含超过110万个基因-疾病关联和30万个变异-疾病关联。使用示例包括查询特定疾病相关基因和多疾病联合分析。

1.前言

DisGeNET是一个综合性的数据库,它集合了关于基因和人类疾病之间关联的信息。这个数据库涵盖了各种疾病和条件,提供了大量有关基因、变异和疾病之间联系的数据。DisGeNET数据集通常用于生物信息学和基因组学研究,特别是在疾病遗传学和药物发现领域。


disgenet2r包是一个用于R语言的工具,专为访问和分析DisGeNET数据库中的数据而设计。DisGeNET是一个包含了人类基因和疾病关联数据的综合性数据库。通过disgenet2r包,研究者可以在R环境中直接查询、检索和分析与基因和疾病相关的信息。

当前版本的 DisGeNET (v7.0) 包含 21671 个基因与 30170 个疾病、病症、性状和临床或异常人类表型之间的 1134942 个基因-疾病关联 (GDA),以及 194515 个变异与 14155 个疾病、性状和表型之间的 369554 个变异-疾病关联 (VDA)。

2.获取R包

# https://github.com/jinfar/disgenet2r
library(devtools)
install_bitbucket("ibi_group/disgenet2r")
library(disgenet2r)

有一位粉丝提到他那边怎么都下载不了,挂不挂梯都试了,网络环境问题。而且该包也没有提供本地包下载,小编提议暂时直接在github上下载压缩包,然后把主函数全部scoure一遍(无奈之策):

## 报错:
Downloading bitbucket repo ibi_group/disgenet2r@HEAD Error: Failed to install 'disgenet2r' from Bitbucket: error reading from connection
## 无奈之策:
list.files()
# [1] "DESCRIPTION"      "disgenet2r.Rproj" "inst"             "man"             
# [5] "NAMESPACE"        "R"                "README.md"        "vignettes"       
for (i in list.files("./R")) {
   source(paste0("./R/",i))
}

3.使用方法

加载完R包后先调用API,记得提前在DisGeNET官网中注册一个帐号,随便一个国内邮箱都可以,然后完成设置:

## 调用API
disgenet_api_key <- get_disgenet_api_key(
  email = "xxxx@126.com", 
  password = "******" )
Sys.setenv(DISGENET_API_KEY= disgenet_api_key)

下面列举几个常用的代码,可视化的形式就networkPiechartDiseaseClassVennHeatmapProteinClassBarplotLollipop。与不同用途排列组合起来以及例图太多太多了,使用前可以参考官网文档,都有一一列举。

3.1 检索单一疾病相关基因

可以修改疾病代号,替换参数中的diseasevocabulary即可,这里以精神分裂症(D012559)为例

disease

vocabulary

D012559

——

181500

OMIM

295

ICD9CM

C3362

NCI

HP:0100753

HPO

data4 <- disease2gene( disease  = "181500", vocabulary = "OMIM",
                          database = "CURATED",
                          score    = c(0.4,1 ) )
data4
# Object of class 'DataGeNET.DGN'
# . Search:      single 
# . Type:        disease-gene 
# . Database:     CURATED 
# . Score:        0.4-1 
# . Term:        181500 
# . Results:  227

3.2 多疾病联合

## 疾病列表
diseasesOfInterest <- c("C0036341", "C0002395", "C0030567","C0005586")
## 检索
data5 <- disease2gene(
  disease = diseasesOfInterest,
  database = "CURATED",
  score =c(0.5,1),
  verbose  = TRUE )
  
## 可视化
plot( data5,
      class = "Network",
      prop = 1,
      verbose = T)
# The network contains 154 nodes and 170 edges.

3.3 疾病富集

list_of_genes <- disease2gene(disease = "C0004352", database = "GENOMICS_ENGLAND")
list_of_genes <- list_of_genes@qresult$gene_symbol
res_enrich <-disease_enrichment( entities =list_of_genes, vocabulary = "HGNC",
                                 database = "CURATED" )
table1 <- res_enrich@qresult[1:10, c("Description", "FDR", "Ratio",  "BgRatio")]
head(table1)
# Description          FDR Ratio  BgRatio
# 5              Autistic Disorder 3.188823e-30 20/20 261/9703
# 143      Intellectual Disability 1.677768e-11 13/20 447/9703
# 91    Global developmental delay 2.796271e-07  7/20 133/9703
# 126 Neurodevelopmental Disorders 9.257204e-07  6/20  93/9703
# 124    Autism Spectrum Disorders 2.067698e-05  5/20  85/9703
# 64             Abnormal behavior 1.107414e-04  3/20  16/9703

image.png

4.总结

这个R包是DisGeNET配套的R包,比较适合新手,或者懒癌患者。和官网上下载的结果是一样的,不过会方便很多,基本上一行代码就能出表或者出结果了。缺点就是可调整的参数不多,因此可视化结果会重复。要进阶的小伙伴可以拿这个R包检索结果,自行整理data.frame自行可视化。

赶紧用起来吧~

目录
相关文章
|
7月前
|
Python
python中导入模块/包的几种方式
python中导入模块/包的几种方式
77 0
|
7月前
|
Python
请描述 Python 中的模块和包的概念,以及如何导入和使用它们。
请描述 Python 中的模块和包的概念,以及如何导入和使用它们。
51 3
|
28天前
|
开发者 Python
如何在Python中管理模块和包的依赖关系?
在实际开发中,通常会结合多种方法来管理模块和包的依赖关系,以确保项目的顺利进行和可维护性。同时,要及时更新和解决依赖冲突等问题,以保证代码的稳定性和可靠性
45 4
|
7月前
|
数据可视化 API 数据库
R包:disgenet2r|DisGeNET的懒癌福利,一行代码多种可视化
DisGeNET是整合基因-疾病关联数据的综合数据库,用于生物医学研究。disgenet2r是R包,方便访问DisGeNET数据,支持查询、检索和分析。最新版包含超百万基因-疾病关联。安装包时若遇到网络问题,可从GitHub下载源代码手动加载。常用功能包括检索单一疾病相关基因、多疾病联合分析及疾病富集。该包简化了数据获取和初步分析,适合初学者,但可视化定制性有限。
201 1
|
7月前
|
Python
在Python中快捷引入缺失包的技巧和实践
在Python中快捷引入缺失包的技巧和实践
52 0
|
7月前
|
机器学习/深度学习 PyTorch TensorFlow
|
7月前
|
人工智能 数据挖掘 Python
Python模块与包的管理与使用
Python作为一种广泛应用的编程语言,模块与包的管理与使用是其核心特性之一。本文将介绍Python中模块与包的概念,以及如何进行有效的管理和利用,帮助读者更好地理解和运用Python编程。
|
7月前
|
数据可视化 UED Python
用Python打造批量下载视频并能可视化下载进度的炫酷下载器
用Python打造批量下载视频并能可视化下载进度的炫酷下载器
94 0
|
Java Maven
项目导入依赖后,还是用不了包的一个解决思路
项目导入依赖后,还是用不了包的一个解决思路
596 0
|
Windows
Python+selenium 自动化 - 实现自动导入、上传外部文件实例演示
Python+selenium 自动化 - 实现自动导入、上传外部文件实例演示
359 0
Python+selenium 自动化 - 实现自动导入、上传外部文件实例演示