This is a test version of Biostars. For the public version, visit https://www.biostars.org.
How to calculate the Position Weight Matrix score?

Hi,

Can anyone explain me how to calculate the Position Weight Matrix score?

I know the formula, but I don't understand it. I have a table with the frequences of nucleotides, and a table with the PWM scores:

Frequences of nucleotides:

Position:            1       2        3        4        5

A                    0       0.9      0.1      0.6      0.2
C                    0       0        0.2      0.1      0.2
G                    0       0        0.1      0        0.1
T                    1       0.1      0.6      0.3      0.5

And I have the corresponding PWM scores:

Position:            1       2        3        4         5

A                            1.848   -1.322    1.263    -0.322
C                                    -0.322   -1.322    -0.322
G                                    -1.322             -1.322
T                    1      -1.322    1.263    0.263     1

But, I have no idea how this scores are calculated. The formula is:

enter image description here

But I don't understand this.

Can anyone explain me step by step how I can calculate this scores?

I especially don't understand how to calculate p(b,i).

Thanks! :)

pssm pwm

2 answers

p(b) = expected background frequency of each nucleotides. You can assume it to be 0.25 (4 nucleotides distributed uniformly in background).

p(b, i) is the frequency of the corresponding row and column. Example:

Pos 2A: PWM = log2(0.9/0.25)

Pos 2T = log2(0.1/0.25)

Basically, you have to divide the frequency matrix by 0.25 (the background frequency of each nucleotide) and take the log2 of result.

but the caculation result is: math.log(0.9/0.25) 1.2809338454620642 it does not equal to what you said Pos 2A: PWM = log2(0.9/0.25).

take log on base2 (log2) instead of natural log (base e).

Log in to answer this question.