One thing we do locally is maintain a Starch file containing whole-genome FIMO hits or calls at some threshold, formatted as BED intervals, i.e., :
$ unstarch /net/seq/data/projects/motifs/fimo/hg19.jaspar.1e-4/fimo.combined.1e-4.parsed.starch | head
chr1 10003 10023 MA0073.1-RREB1 3.52314e-05 + CCCTAACCCTAACCCTAACC
chr1 10009 10029 MA0073.1-RREB1 3.52314e-05 + CCCTAACCCTAACCCTAACC
chr1 10015 10035 MA0073.1-RREB1 3.52314e-05 + CCCTAACCCTAACCCTAACC
chr1 10021 10041 MA0073.1-RREB1 3.52314e-05 + CCCTAACCCTAACCCTAACC
...
With this, we can take promoter regions (formatted as a sorted BED file), e.g.:
$ echo -e "chr9\t133252000\t133253000" > /tmp/adHocPromoter.bed
And do some operations with BEDOPS bedmap to look for all TFBS that overlap the promoters by one or more bases:
$ bedmap --chrom chr9 --echo --echo-map-id-uniq --delim '\t' /tmp/adHocPromoter.bed /net/seq/data/projects/motifs/fimo/hg19.jaspar.1e-4/fimo.combined.1e-4.parsed.starch
chr9 133252000 133253000 MA0014.1-Pax5;MA0017.1-NR2F1;MA0018.2-CREB1;MA0019.1-Ddit3::Cebpa;MA0028.1-ELK1;MA0039.2-Klf4;MA0047.1-Foxa2;MA0048.1-NHLH1;MA0061.1-NF-kappaB;MA0062.2-GABPA;MA0065.1-PPARG::RXRA;MA0065.2-PPARG::RXRA;MA0071.1-RORA_1;MA0076.1-ELK4;MA0079.1-SP1;MA0079.2-SP1;MA0088.1-znf143;MA0102.1-Cebpa;MA0111.1-Spz1;MA0112.1-ESR1;MA0112.2-ESR1;MA0116.1-Zfp423;MA0119.1-TLX1::NFIC;MA0137.2-STAT1;MA0138.1-REST;MA0138.2-REST;MA0139.1-CTCF;MA0141.1-Esrrb;MA0144.1-Stat3;MA0145.1-Tcfcp2l1;MA0146.1-Zfx;MA0150.1-NFE2L2;MA0159.1-RXR::RAR_DR5;MA0160.1-NR4A2;MA0163.1-PLAG1;MA0258.1-ESR2
The last column of output is a list of co-occuring TF hits with a p-value of 1e-4 or less, which can be piped into R or other tools for statistical calculations.
By keeping the Starch archive of whole-genome hits, we can quickly perform repeated scans for FIMO hits of various thresholds (e.g. the more stringent 1e-5) or over windows from promoters, enhancers, intron-exon junctions, etc. We just do the FIMO analysis once, whole-genome, and then do set operations as the experiment parameters change.
I strongly disagree. TF binding is highly dynamic and depends on open chromatin regions, which again are highly dynamic and cell-type-specific, leave alone conditions, even more dynamic than gene expression.
Thank your for your comment. Isn't that more motif activity than the binding site? the binding sites should be fairly shared shouldn't they? If they are active however is a different issue and dependent on the system. Otherwise, the whole remap merged peaks would be nonsense, wouldn't it? Thank you for any insight.