Using estimated k-mer level affinities returned by kmerFit, this function tests for preferential affinity within conditions for each k-mer. Here, preferential affinity is defined as statistically significant affinity above a normal background distribution fit to each condition.

For each condition, the k-mer affinities above background are determined by first fitting a normal+exponential convolution to the distribution of estimated affinities. Then, the expected exponential component for each k-mer is taken as the estimate of preferential affinity. Under this formulation, the normal component of the fitted convolution corresponds to the background distribution of binding affinities for k-mers, while the exponential component corresponds to the signal (preferential) affinity above this background.

kmerTestAffinity(se)

Arguments

se

a SummarizedExperiment of k-mer-level estimated affinities returned by kmerFit.

Value

SummarizedExperiment of k-mer preferential affinity results with the following assays:

  • "affinityEstimate": input k-mer affinities.

  • "affinityVariance": input k-mer affinity variances.

  • "affinitySignal": estimated affinity signals above background.

  • "affinityZ": studentized signals (affinitySignal / sqrt(affinityVariance)).

  • "affinityP": one-sided tail p-values for studentized signals.

  • "affinityQ": FDR-controlling Benjamini-Hochberg adjusted p-values.