Hello, I'm performing a WGCNA analysis in a set of control and disease samples. My main objective is to associate module eigengenes with some traits, particularly within the disease group. I find significant associations with the traits but I want to determine if the associated modules have different expression levels between control and disease. I've performed two analysis so far:

Approach1: construct the case and control networks independently, and associated module eigengenes with the traits of interest. This gives me clear definitions in the disease case which modules are associated with the trait, however, this does not let me know which modules are differently expressed between healthy and disease. I have looked at module preservation between the healthy and disease network which shows that all modules are preserved, however, I know from differential analysis that there are significant differences.

Approach 2 : Build the network using all samples. This gives me fewer modules of greater size which are clearly related to disease status, however the association with the traits is now not as clear. Several of the modules that were associated with the trait in my independent network analysis, are now merged into single modules, probably because many of the genes are differentially expressed.

I am leaning against approach 2 as my main interest is finding modules in the diseased network which are associated with the traits of interest, however I do somehow need to show if the expression of these modules is altered between cases and controls.

My question is this: Does it make sense to calculate module eigengenes in the control dataset using the labels calculated in the diseased network? And then comparing eigengene expression between case and control? I'm sceptical because this would mean that the weights of variable genes which make up the linear combination will be different between the two sample sets. This type of calculation is performed in module preservation analysis, but I’ve never seen any instance of calculating MEs in one network and comparing the expression level across other treatment groups (as I have more than one disease group, the overall goal would be to compare across several). Could anyone advise on if this is appropriate, or any other alternative to comparing expression levels of modules across networks.