Help with Fisher test between drug-targets
4
0
Entering edit mode
4.2 years ago
kakukeshi ▴ 80

I have a group of genes associated with one disease (disease-genes) and a group of drugs used to treat the same disease (disease-drugs). I'm wondering if there's a way to test if the "disease-drugs" are targeting significantly these genes more than any other genes. I was thinking to evaluate the null hypothesis with a Fisher test in a table like this:

                  disease-genes   |  non-disease genes
disease-drugs           30                   211
non-disease drugs       80                   1006


However, I noticed that some drugs non-associated with the disease are also targeting the same genes that the "disease-drugs", which implies that the "disease-genes" are not exclusive to only one category. Can I use the Fisher test even with this overlap? or there's any way to test this association?

Thanks

test R gene drug • 1.6k views
0
Entering edit mode

So you are saying that a single gene is targeted by multiple drugs, some disease-specific and some disease non-specific?

0
Entering edit mode

Yes. A disease-gene can be targeted by disease-specific drugs but also by other drugs, so basically when I count the frequency this gene is part of both categories. My question is if that's a problem when I'm doing a Fisher test? I read somewhere that each case must belong to just one category

0
Entering edit mode

Once you have your comparisons tested with FET, ANOVA or other, you may want to explore some of your genes aka drug targets, drugs and diseases of interest with the Open Targets Platform.

You can search for a target (or disease) on a one by one case basis to get the list of diseases (or targets) associated with your entry.

You can also search for the drug names and these will be matched to targets (e.g. humira with TNF) and diseases (humira with 20 diseases e.g. colitis).

Then you can explore more the targets and diseases, including info on the drugs (in clinical trials or approved by the FDA) targeting the TNF protein target for example or used in patients with a given condition such as colitis; or including protein interactions between TNF and others e.g. INFG.

Since you have a few dozen genes, you may want to use our batch search tool instead. You can get some cool stuff from the batch search results. More on my tutorial Open Targets batch search, your list of human genes matched to our disease associations.

2
Entering edit mode
4.2 years ago

You could redefine the question; "is gene "X" targeted by one or more disease-specific drugs?" Each gene will have a binary answer, which will be appropriate for FET.

0
Entering edit mode

It's a rather likely scenario e.g. TNF in rheumatoid arthritis with drugs ETANERCEPT, ADALIMUMAB, INFLIXIMAB, CERTOLIZUMAB PEGOL, etc

1
Entering edit mode
4.2 years ago

Fisher's exact test applies to contingency tables. A contingency table is formed of counts of objects in categories that are exclusive and exhaustive, i.e. the categories can't have overlap and the categories must cover all observations.

0
Entering edit mode

Thanks for the answer. Do you know any other way in which I could test the association in this case?

0
Entering edit mode

I think you could make a third category that captures the overlap then maybe use an ANOVA with these three categories.

0
Entering edit mode
4.2 years ago
Bioaln ▴ 350

First, try to discard such examples and see if anything relevant surfaces. If that doesn't work, reformulate the problem.

0
Entering edit mode

I am not sure it is wise to discard observations like this. There may be information in the disease genes targeted by multiple drugs.

0
Entering edit mode
4.2 years ago
kakukeshi ▴ 80

Thanks everybody for the help. I was thinking to reformulate the problem by calculating the significance of the overlap between the targets of the "disease-drugs" and the disease-genes. If:

a = disease-drug targets b = disease genes t = overlap n = total n of genes

Then I can calculate the significance with a hypergeometric test: sum(dhyper(t:b, a, n-a, b)) or fisher.test(matrix(c(n-union(a,b), setdiff(a,b), setdiff(b,a), intersect(a,b), nrow=2)))

What do you think? Thanks

1
Entering edit mode