使用easyConvert R包可获取基因的注释,包括基因的别名称别名、基因类型、Ensembl ID、Entrez ID及多个数据库的基因简介(summary)。
R包安装
# remotes包安装
install.packages("remotes")
# easyConvert包安装
remotes::install_github("dming1024/easyConvert")
# remotes::install_github("dming1024/easyConvert", force=TRUE)
查询示例
输入三个变量分别对应:查询gene id或symbol、查询输入类型和输出结果目录。
1. 根据NCBI gene ENTREZID查询基因注释
# 可通过"1,10,100,1000"输入,一次查询多个基因,逗号分割即可
Rscript geneQuery.R "1,10,100,1000" "ENTREZID" "/gene_annoation"
2. 根据gene symbol查询基因注释
# 多个gene symbol使用逗号分割
Rscript geneQuery.R "TP53,HBA" "SYMBOL" "/gene_annoation"
基因注释查询R实现
args <- commandArgs(T)
InputQueryInfo <- args[1]
InputQueryType <- args[2]
WorkDirectory <- args[3]
# 查询物种,人
querySpecies <- "HUMAN"
# 存在多个输入查询信息时,使用","号进行分割, 转换为向量
if (grepl(",", InputQueryInfo)){
InputQueryVector <- as.vector(strsplit(InputQueryInfo, ",")[[1]])
}else{
InputQueryVector <- as.vector(InputQueryInfo)
}
if (!InputQueryType %in% c("ENTREZID", "SYMBOL")){
print("The InputQueryType must be ENTREZID or SYMBOL!")
q()
}
# 手动导入库路径
# .libPaths("/public/software/package/R-4.2.0/library")
library(easyConvert)
setwd(WorkDirectory)
if (InputQueryType == "ENTREZID"){
queryEntrezid <- easyConvert(species = querySpecies, queryList = InputQueryVector, queryType = InputQueryType)
# 写入结果至queryEntrezID.txt
write.table(queryEntrezid, "queryEntrezID.txt", sep="\t")
}else{
querySymbol <- easyConvert(species = querySpecies, queryList = InputQueryVector, queryType = InputQueryType)
# 写入结果至querySymbol.txt
write.table(querySymbol, "querySymbol.txt", sep="\t")
}
查询结果
根据NCBI gene ENTREZID查询基因注释结果
queryEntrezID.txt文件内容
根据gene symbol查询基因注释
querySymbol.txt文件内容
|