A PROGRAM PREDICTING
THE E. COLI PROMOTER STRENGTH

 

MT KNOWLEDGE BASE "ACTIVITY"

MN E. coli promoter strength in terms of -lg[Pbla] units

CF CONTEXTUAL FEATURE

CT Statistical

PV ASM

AB -49 18

UT 0.589

CC double WeightASM_for_EcPbla (char *s){

CC double X; char *seq; int i,k, SiteLength=68;

CC double Weigth5P0 [66]={

CC /* -49 -48 -47 -46 -45 -44 -43 -42 -41 -40 */

CC 0.100, 0.100, 0.100, 0.100, 0.100, 0.100, 0.100, 0.100, 0.100, 0.100,

...........................................................................

CC /* 11 12 13 14 15 16 */

CC 0.525, 0.356, 0.207, 0.143, 0.103, 0.100 };

CC seq=&s[0]; if(strlen(seq)<SiteLength+1)return(-1001.);

CC for (i=0, X=0.;i<SiteLength-1;i++)

CC if(seq[i ]=='A')

CC if(seq[i ]=='G' || seq[i ]=='C')

CC if(seq[i+1]=='A' || seq[i+1]=='C') X+=Weight5P0[i];

CC return(X);};

CF CONTEXTUAL FEATURE

CT Conformational

PV Direction

AB -5 15

UT 0.502

CC double Direction_for_EcPbla (char *s){

CC double X; char *seq; int i,k, SiteLength=21;

CC double DinucPar[16]={

CC /* AA AT AG AC TA TT TG TC */

CC -154., 0., 2., 143., 0., 154., 64., -120.,

CC /* GA GT GG GC CA CT CG CC */

CC 120., -143., 57., 180., -64., -2., 0., -57. };

CC seq=&s[0]; if(strlen(seq)<SiteLength+1)return(-1001.);

CC for (i=0, X=0.;i<SiteLength-1;i++) {

CC switch (seq[i ]) { case 'A': k= 0; break;

....................................................

CC default : return(-1002.); }

CC switch (seq[i+1]) { case 'A': k+=0; break;

....................................................

CC default : return(-1003.); }

CC if (k>15) return(-1004.); X+=DinucPar[k]; }

CC return (X/(double)(SiteLength-1));};

CF PREDICTION ACTIVITY

CT Multiple Linear Regression

LC 0.906

CC double EcPbla_by_WeightASM_Direction (char *s){

CC extern double WeightASM_for_EcPbla (char *);

CC extern double Direction_for_EcPbla (char *);

CC double x1,x2; char *seq; int s1=0, s2=45, SiteLength=68;

CC seq=&s[0]; if(strlen(seq)<SiteLength+1)return(-1001.);

CC seq=&s[s1]; x1=WeightASM_for_EcPbla (seq); if(x1<-999.)return(x1);

CC seq=&s[s2]; x2=Direction_for_EcPbla (seq); if(x2<-999.)return(x2);

CC return (0.307547 + 0.576596*x1 + 0.000799*x2);}

 

 

 

 

back