Question: Help! Gene Ontology Enrichment Analysis
0
gravatar for ab123
24 months ago by
ab12340
London
ab12340 wrote:

Hi there, This is my first time doing GO enrichment and I am a little confused and could do with some help.

I'm doing a meta analysis of diff. tissues and now trying to do a GO analysis of the Fisher's findings.

I've found GoExpress and topGO as tools, but their instruction guides are a mystery to me. I am not sure what they want and they also ask for annotations, which is a little tricky in a meta analysis of different platforms?

For example, running the below gives me the error code "invalid genes selected".

DE_genes_CD <- subset(blood_sorted, Fishers.P.Value < 0.001)$Symbol
back_genes_idx <- genefinder(as.matrix(blood), as.character(DE_genes_CD),
                             method="manhattan", scale="none")

I'm sure I'm overlooking something or not approaching/understanding this the right way.

Any help/hints/code would be much appreciated!!!!

Many thanks!

ADD COMMENTlink modified 24 months ago by Mehmet460 • written 24 months ago by ab12340

Please paste example data here (head or top 5 lines)

ADD REPLYlink written 24 months ago by cpad011211k
> all.genes <- sort(unique(as.character(blood_sorted$Symbol)))
> int.genes <- sample(x = all.genes, size = 1000)
> int.genes <- factor(as.integer(all.genes %in% int.genes))
> names(int.genes) = all.genes
> selGenes <- sample(ls(illuminaHumanv3GO))
> gene2GO <- lapply(mget(selGenes, envir = illuminaHumanv3GO), names)
> gene2GO[sapply(gene2GO, is.null)] <- NA
> go.obj <- new("topGOdata", ontology='BP'
+               , allGenes = int.genes
+               , annot = annFUN.gene2GO
+               , gene2GO = gene2GOID
+ )

Building most specific GOs .....
    ( 0 GO terms found. )

Build GO DAG topology ..........
    ( 0 GO terms and 0 relations. )
Error in if is.na(index) || index < 0 || index > length(nd)) stop("vertex is not in graph: ",  : 
  missing value where TRUE/FALSE needed
ADD REPLYlink written 24 months ago by ab12340

Here is the crude example R script that worked. Try looking at the structure of your object/df.

=========

library(Biobase)
data("geneData")
data=tail(geneData)
data
genes=c("31734_at","31738_at")
str(genes)
genefinder(data,genes, numResults=2, scale="none",  method="euclidean")

Result

===========

> genefinder(data,genes, numResults=2, scale="none",  method="euclidean")
[[1]]
[[1]]$indices
[1] 6 2

[[1]]$dists
[1] 545.1294 576.7866


[[2]]
[[2]]$indices
[1] 6 3

[[2]]$dists
[1] 274.8154 544.4757

==========

ADD REPLYlink modified 24 months ago • written 24 months ago by cpad011211k

Hi there,

Does that work without the expression values?

You see, I'm working with already existing Fisher's P.values in a data.frame which I can easily change to a matrix, but I don't have expression values in there.

Thank you!

ADD REPLYlink modified 24 months ago • written 24 months ago by ab12340
0
gravatar for Mehmet
24 months ago by
Mehmet460
Japan
Mehmet460 wrote:

Have you tried blast2go?

ADD COMMENTlink written 24 months ago by Mehmet460

No, but I was looking for a way to do this in R, not an outside software. Either way, thanks for suggesting!

ADD REPLYlink written 24 months ago by ab12340
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 796 users visited in the last hour