Question regarding WGCNA
0
0
Entering edit mode
6 months ago
deepak • 0

Hi, I am trying to run WGCNA analysis for wheat expression data. When I run sft = pickSoftThreshold(datExpr, powerVector = powers, verbose = 5), I get this as output file

Power           SFT.R.sq  
1)                 0.915
2)                 0.721
3)                  0.179
4)          0.0866
5)       0.373
6)  0.523
7)  0.612
8)  0.674
9)  0.701
10) 0.726
12) 0.759
14) 0.808
16) 0.804
18) 0.83
20) 0.869

After this I run sft[["powerEstimate"]], I get

sft[["powerEstimate"]]
[1] 1

So it is showing the highest SFT.R.sq at power 1. Is it correct,? When I saw other papers they showed the highest SFT.R.sq at power 6.

WGCNA Network-construction • 895 views
ADD COMMENT
0
Entering edit mode

There is something wrong with your data but without any context I can't really answer to your question. I would like to see a PCA plot of the expression data used as input for WGCNA.

ADD REPLY
0
Entering edit mode

Thank you for your reply andres.firrincieli. I have attached the PCA plot of the expression data used in the WGCNA.

enter image description here

ADD REPLY
1
Entering edit mode

the within-group variability is so small that these look like technical replicates rather than independent biological replicates

ADD REPLY
0
Entering edit mode

These are independent biological replicates

ADD REPLY
0
Entering edit mode

Ok, then.

You likely have a scale free topology that look like this: link

In this situation you should pick the power value with an SFT.R.sq above or equal to 0.8 and mean connectivity (mean.k) is below 100.

One more question, can you run pickSoftThreshold with networkType = "signed"?

Thanks

ADD REPLY
0
Entering edit mode

Thank for the reply. I am running this code:

# set a set of soft-thresholding powers
powers = c(c(1:20), seq(from = 22, to=30, by=2))

# Calculate a soft-thresholding power used for downstream analysis
sft = pickSoftThreshold(datExpr, powerVector = powers, verbose = 12)
sft[["powerEstimate"]]

# Plot Scale-free topology fit index as a function of the soft-thresholding power
ggplot(sft$fitIndices, aes(Power, SFT.R.sq, label = Power)) +
  geom_point() +
  geom_text(nudge_y = 0.1) +
  geom_hline(yintercept = 0.8, color = 'red') +
  labs(x = 'Power', y = 'Scale free topology model fit, signed R^2') +
  theme_classic()

# Plot Mean connectivity as a function of the soft-thresholding power
ggplot(sft$fitIndices, aes(Power, mean.k., label = Power)) +
  geom_point() +
  geom_text(nudge_y = 0.1) +
  labs(x = 'Power', y = 'Mean Connectivity') +
  theme_classic()

# use soft thresholding power 6 and calculate the adjacencies
adjacency = adjacency(datExpr, power = 14)
# To minimize effects of noise and spurious associations, we transform the adjacency 
# into Topological Overlap Matrix (TOM)
TOM = TOMsimilarity(adjacency)

# then calculate the corresponding dissimilarity
dissTOM = 1-TOM
ADD REPLY
0
Entering edit mode

Plots are incomplete without legends. Please share the complete plot with mappings for shape and color.

ADD REPLY

Login before adding your answer.

Traffic: 1778 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6