This is a test version of Biostars. For the public version, visit https://www.biostars.org.
How to actually identify which transcription factors are actively regulating a pathway/gene panel

I have identified a certain gene panel I want to further explore which transcription factors are actively regulating the gene panel, while I have identified transcription factors for my gene panel using ChEA3, it only tells me the transcription factors that have an overlap with my gene list. I tried using doRothEA+VIPER to get transcription factor activity on the whole dataset and cross reference the top hits from chEA3 to VIPER to see if those transcription factors follow a similar trend to the pathway scoring performed on my gene panel using ssGSEA however it does not. I understand that the main reasons these transcription factors dont show the same gradient is because transcription factors target a multitude of genes not just certain genes which could obviously make the scoring noisy. Therefore I was wondering if there is some other algorithm or other scoring method that I can use to get my desired outcome? Thank you.

algorithms transcription factor scoring

1 answer

A few things worth separating here.

First, the mismatch you are seeing is expected rather than a failure. VIPER activity for a TF is computed over its entire regulon (often hundreds of targets, genome-wide), while your ssGSEA score is over a small curated panel. Those two numbers measure different things, so there is no particular reason they should track each other, even for a TF that genuinely does regulate part of your panel. Using their disagreement as a filter will mostly discard real hits.

If you want them to be comparable, restrict the regulon instead of switching algorithm: intersect each TF regulon with your panel and compute activity from only those targets. decoupleR lets you pass any custom network, and I would use ulm/mlm rather than viper there, since viper gets unstable once a regulon drops below roughly 20-25 targets. That gives you "how much is this TF driving MY panel" rather than "how active is this TF overall". Just be aware this is partly circular -- the activity score and the pathway score are then computed from overlapping genes, so they will correlate by construction. It is fine as a description, not as independent validation.

Second, on "actively regulating": expression-based methods cannot really establish that. Neither a ChEA3 overlap nor a regulon activity score is evidence that the TF is acting at your loci in your samples. If you have or can generate ATAC-seq, TF footprinting (TOBIAS, HINT-ATAC) is the closest thing to a direct readout. Without chromatin data, the most useful orthogonal evidence is motif enrichment in the promoters/enhancers of the panel genes specifically -- monaLisa or HOMER against a properly matched background (GC and promoter-content matched, otherwise you mostly recover CpG-rich motifs). A TF that shows up in ChEA3, has enriched motifs at the panel's regulatory regions, and has coherent activity on the panel-restricted regulon is a far stronger candidate than one supported by any single line of evidence.

Two smaller points: CollecTRI has largely superseded DoRothEA (better coverage and sign annotation) and plugs straight into decoupleR, so worth swapping. And if you would rather infer the network from your own data than rely on a prior, GRNBoost2/SCENIC is the usual route -- that can surface regulators that curated resources miss for your particular system.

Log in to answer this question.