aertslab / pySCENIC

pySCENIC is a lightning-fast python implementation of the SCENIC pipeline (Single-Cell rEgulatory Network Inference and Clustering) which enables biologists to infer transcription factors, gene regulatory networks and cell types from single-cell RNA-seq data.
http://scenic.aertslab.org
GNU General Public License v3.0
439 stars 181 forks source link

identifying direct TF targets #272

Open rojinsafavi opened 3 years ago

rojinsafavi commented 3 years ago

Hi @cflerin !

I have few questions regarding "direct target identification" I was wondering if you could specify in what step this happens?

I followed this tutorial : https://github.com/aertslab/pySCENIC/blob/master/notebooks/pySCENIC%20-%20Full%20pipeline.ipynb

I created modules from adjacencies: modules = list(modules_from_adjacencies(adjacencies, ex_matrix)) Then I pruned it, but I set the NES threshold to 0.1 since I was losing some important TFs (is that problematic?). df = prune2df(dbs, modules, MOTIF_ANNOTATIONS_FNAME) Then I created regulons again (is this when the direct targets are detected?) regulons = df2regulons(df) and then wrote these regulons into a txt file and visualized it in iRegulon.

rojinsafavi commented 3 years ago

@cflerin any advice on this? :-)

cflerin commented 3 years ago

Hi @rojinsafavi ,

The iRegulon analysis is usually meant to be done with the modules output, and you can do the pruning, etc. in iRegulon. Whereas here it looks like you're using the pruned regulon in iRegulon. Try starting from the unpruned modules for your TF instead, there should be 5-6 modules for each TF (I linked a tutorial in #230).

iRegulon is a similar approach to cisTarget (from pySCENIC) but less automated. And you will have more control and be able to see the different steps and perhaps get some clues as to why your particular TF is not kept at the end. You would likely expect to find (slightly) different results when compared to cisTarget.

Lowering your NES threshold here is fine for diagnostic purposes to see the score of your TF but it will then give you more false positive hits, so be careful about using these.