-
Notifications
You must be signed in to change notification settings - Fork 262
Description
Hello YuLab-SMU
I am trying to obtain GO for genes from Brassica oleracea, but somethings is wrong.
I was obtained orthologous for Brassica using the tool g:orth from gprofiler.
With this input I am trying to do GO using clusterprofiler, but something is wrong. I think there is lacking some step to fix anything in my input (genes from Brassica) or maybe another step that I unknown.
My input for GO look like this:
pal_BOL green_BOL
Bo8g117760 Bo5g002710
Bo8g114550 Bo8g117670
Bo5g010000 Bo8g117820
Bo8g058660 Bo5g002450
Bo8g107870 Bo8g117890
Bo5g020520 Bo5g002380
Bo5g020860 Bo8g117940
Bo8g106040 Bo8g118140
Bo5g021040 Bo8g118180
Bo8g106000 Bo5g001330
Bo8g066810 Bo8g118290
Bo8g067030 Bo5g003250
Bo5g027600 Bo8g001000
Bo5g034170 Bo5g003340
Bo5g034280 Bo5g003370
Bo7g059440 Bo8g001100
Bo01055s030 Bo8g117320
Bo24568s010 Bo2g158800
Bo5g008910 Bo5g003550
PDTA: gprofiler inf: the "ortholog name" is the preferred gene name in relevant Ensembl Biomart for that gene. The "ortholog ENSG" is the ensembl gene id. It's poorly named due to historical reasons, but we haven't changed it to keep it as compatible with already created pipelines as possible.
This is my code
library(lattice)
library(BiocFileCache)
library(biomaRt)
library(dplyr)
library(ggplot2)
library(RSQLite)
library(devtools)
library(dbplyr)
#listMarts()
head(biomaRt::listMarts(host = "https://plants.ensembl.org"))
https://plants.ensembl.org
I need use "plants_mart"
#create an object that stores the "plants_mart" information
db <- biomaRt::useMart(biomart = "plants_mart", dataset = "boleracea_eg_gene", host = "https://plants.ensembl.org")
#get the list of data sets available in the mart:
datasets <- biomaRt::listDatasets(db)

dataset #### description #### version
boleracea_eg_gene #### Brassica oleracea genes (BOL) #### BOL
attributes <- biomaRt::listAttributes(db)
head(attributes)
keytype: ensembl_gene_id (Gene stable ID)
setwd()
#***** gen ontology *****#
library(AnnotationDbi)
library(clusterProfiler)
library(forcats)
library(enrichplot)
library(pathview)
library(data.table)
library(ggplot2)
library(GOsummaries)
library(DOSE)
library(tidyverse)
uploading universe file
here my universe https://bit.ly/40t8gMG
universe = read.delim("universe_Bol.txt", header = T)
universe<-as.character(universe[,1])
universe <- sort(universe, decreasing = TRUE)
head(universe)
uploading File with genes to analyze
gene <- read.delim("GO.txt", header = T)
head(gene)
ORA
ORA <- compareCluster(geneClusters=gene,
enrichGO,
OrgDb = db,
keyType = "ensembl_gene_id",
ont = "BP",
pAdjustMethod = "BH",
universe = universe,
pvalueCutoff = 0.05,
qvalueCutoff = 0.05,
readable = FALSE)
Error in (function (classes, fdef, mtable) :
unable to find an inherited method for function ‘mapIds’ for signature ‘"Mart"’
It seems that there is no match between the input and the "db" (from the ensembl plant base).
I also think the problem may be in the "keyType".
I'm not sure how to solve the problem
Could you please help me?
Thank you very much in advance