Computes the P-value associated with a score threshold.
TFMsc2pv(mat, score, bg=c(A=0.25, C=0.25, G=0.25, T=0.25),
type=c("PFM", "PWM"))
The P-value is returned based on the matrix, given the desired score.
The input matrix. It can be a Position Frequency Matrix (PFM) or Position Weight Matrix (PWM) in log ratio. The matrix must have row names with "A", "C", "G", "T".
The required score.
The background frequency of the sequences. A numeric vector with names "A", "C", "G", "T".
The type of input matrix. Can be "PFM" or "PWM".
Ge Tan
Touzet, H., and Varre, J.-S. (2007). Efficient and accurate P-value computation for Position Weight Matrices. Algorithms Mol Biol 2, 15.
pfm <- matrix(c(3, 5, 4, 2, 7, 0, 3, 4, 9, 1, 1, 3, 3, 6, 4, 1, 11,
0, 3, 0, 11, 0, 2, 1, 11, 0, 2, 1, 3, 3, 2, 6, 4, 1,
8, 1, 3, 4, 6, 1, 8, 5, 1, 0, 8, 1, 4, 1, 9, 0, 2, 3,
9, 5, 0, 0, 11, 0, 3, 0, 2, 7, 0, 5),
nrow = 4, dimnames = list(c("A","C","G","T"))
)
bg <- c(A=0.25, C=0.25, G=0.25, T=0.25)
score <- 8.77
type <- "PFM"
pvalue <- TFMsc2pv(pfm, score, bg, type)
Run the code above in your browser using DataLab