-
Notifications
You must be signed in to change notification settings - Fork 22
Description
Hi, thank you for providing such a great tool.
I have two cell populations of interest to compare and want to know how the TF activities vary between those two cell types.
After reading tutorials, github issues by other people and running the code myself, I came up with this working plan and, it would be great if you see this work flow as plausible.
-
Run GRN inference using all cells and obtain the following NetworkModules object
modules <- NetworkModules(crc_grn) -
Based on TF gene expression and accessibility of regions targeted by TF (saved in modules@meta), find population specific TF modules (prune those TFs that are not expressed or gene-TF interaction if the ATAC peaks through which they are interacting is not present in certain cell population)
-
Calculate TF activity in each cell population : mean([TF gene expression] * [estimates of each TF-gene interaction remaining])
Additionally, I have some questions regarding these steps.
Q1. When I prune those TF-gene interaction in specific cell population, should I also consider expression of target genes? If not, it is maybe because there could be negative regulation by TFs?
Q2. Original code to plot Figure2 include following code line to calculate TF expression as follows.
tf_lineage_expr <- aggregate_matrix(t(GetAssayData(rnatac)[unique(ct_grn$tf), ]), groups=rnatac$lineage)
However, I could not find where "aggregate_matrix" function is derived from. Is this equivalent to "Pseudobulk" function from Seurat V5? (https://satijalab.org/seurat/reference/pseudobulkexpression)
Q3. If I want to find TF-regulons in each cell population, should I run Pando GRN pipeline on each cell population from the beginning? Because all these positive and negative regulation by TF could differ in different cell population but can not find in results from the Pando analysis of all cells?
Thank you for your help in advance and looking forward to your responses!