I'm trying to implement a system to identify regions of high signal content in the presence of a noisy landscape. By high signal content, I simply mean intensity values significantly above background intensity values.

Intensity readings are taken at $T$ contiguous locations; at each location, $t, \text{ for } t \in [1,T]$, the intensity count, $f(t) \in [0,\infty)$, is recorded.

My current strategy is this:

Mean-correct---or, simply, subtract the mean intensity---at each observed intensity with a view to removing background noise.

  1. Move a sliding window along the landscape, such that:

  2. For each position $i \in [1,T]$ and window interval $w_{i,i+s-1}$:

  3. compute a test statistic from the $s$ observations within the current interval, $w_{i,i+s-1}$.

  4. compare this test statistic to a preselected null distribution centred on $0$.

  5. compute p-value corresponding to interval $w_{i,i+s-1}$; where the p-value corresponds to the probability of committing a type I error: assuming the region characterises high-signal content when,in fact, it doesn't.

  6. Implement correction for multiple testing, say Benjamini and Hochberg FDR control.

  7. If two overlapping window intervals, $w_{j+s-1},w_{k+s-1}: j+s-1 \geq k$, are both within the FDR threshold, concatenate regions to form one larger region-complex.

The figure given below illustrates this concept. In this figure, two regions, say $A$ and $B$, of the given landscape are covered by the sliding window. In each region, the window is depicted at $t_{A}$ and $t_{B}$ different coverage points respectively (hence the blurring effect). I'm looking for a procedure which which will determine whether the intensity levels at $A$ and $B$ are significantly different from background. The horizontal salmon line represents the mean intensity; upon mean-correction, anything below this line will be removed.

Landscape Signal Plot

I should also mention that I am working with several landscapes, say $L$; hence, the number of window positions---and, further hence, the number of tests---will be $\sum_{l=1}^{L}pos_{l}$, where $pos_{l}$ is the number of window positions in landscape $l$.

For this approach to work, I need to define the test statistic and corresponding null and alternative hypotheses. Given the nature of the problem, I'm not sure what form an appropriate statistic/hypotheses scenario should assume.

Could somebody provide some assistance on how to define an appropriate hypotheses scenario or perhaps suggest a more robust approach to identifying high-signal content regions?

(P.S. I'm not sure that Poisson-based approaches will work as the data seem to be over-dispersed; perhaps a negative binomial assumption would work, but I'm guessing that a non-parametric/resampling/simulation based approach might be best. Having said that, if somebody believes that a Poisson approach is appropriate, please do suggest it!)


1 Answer 1


This sounds an awful lot like peak calling in *seq (ChIP-seq, clip-seq, etc) experiments.

A peak is called where either the number of reads exceeds a pre-determined threshold value or where there is a minimum enrichment compared to background signal, often in a sliding window across the genome. Some tools apply both methods.

from peak calling guide for chip-seq.

There are lots of different models which can be applied (after suitable bias correction)

Models used for the statistical assessment of enriched regions (peaks) range from Poisson (CSAR [85]), local Poisson (MACS), negative binomial (CisGenome [56]) to zero-inflated negative binomial (ZINBA [86]), or even extend to more sophisticated machine learning modeling techniques such as Hidden Markov Model (HPeak [87] and BayesPeak [88]).

From Practical guidelines for the comprehensive analysis of ChIP-seq

The discussion of the modeling assumptions and comparisons to other models present in each of these papers is probably far more informative than I could be.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.