I have genes from four species of bacteria. I constructed an undirected graph from the sequence similarity between all the genes from these bacteria. Each node in the graph is a gene and each edge is the similarity between two genes. I partitioned this graph into subgraph clusters of similar genes using the MCL software.
The four species of bacteria I am using are split into two groups (A & B) based on their response to an environmental condition. I would like to identify the clusters of genes from my graph that are producing this response. To put it another way I would like to create a measure to find the clusters which discriminate A from B. Generally each cluster has genes from all four species.
What would be the best way to do this?
One idea I had was to determine the mean weight between all A-type nodes in a cluster and then divide by the mean edge weight of the cluster. Values greater than 1 would indicate the A-type genes are more closely related to each other.