peakrank_advanced.cpp
来自「MS-Clustering is designed to rapidly clu」· C++ 代码 · 共 1,022 行 · 第 1/3 页
CPP
1,022 行
// add features for flanking pairs of amino acids
if (cut_idx>1)
sample.add_real_feature(r_idx+amino_acids[cut_idx-2]*num_aas+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas*num_aas;
if (cut_idx<length-2)
sample.add_real_feature(r_idx+amino_acids[cut_idx]*num_aas+amino_acids[cut_idx+1],cut_prop);
r_idx+=num_aas*num_aas;
// X != R
// features of the form |LXK |LXXK |LXXXK |LXXXXK
if (cut_idx < length-2 &&
amino_acids[cut_idx+2]==LysIdx &&
amino_acids[cut_idx] != LysIdx && amino_acids[cut_idx] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-3 &&
amino_acids[cut_idx+3]==LysIdx &&
amino_acids[cut_idx] != LysIdx && amino_acids[cut_idx] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-4 &&
amino_acids[cut_idx+4]==LysIdx &&
amino_acids[cut_idx] != LysIdx && amino_acids[cut_idx] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-5 &&
amino_acids[cut_idx+5]==LysIdx &&
amino_acids[cut_idx] != LysIdx && amino_acids[cut_idx] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx+4] != ArgIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
// features of the form |XLXK |XLXXK |XLXXXK |XLXXXXK
if (cut_idx < length-3 &&
amino_acids[cut_idx+3]==LysIdx &&
amino_acids[cut_idx+1] != LysIdx && amino_acids[cut_idx+1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx
&& amino_acids[cut_idx] != LysIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx+1],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-4 &&
amino_acids[cut_idx+4]==LysIdx &&
amino_acids[cut_idx+1] != LysIdx && amino_acids[cut_idx+1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx] != LysIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx+1],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-5 &&
amino_acids[cut_idx+5]==LysIdx &&
amino_acids[cut_idx+1] != LysIdx && amino_acids[cut_idx+1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx+4] != ArgIdx
&& amino_acids[cut_idx] != LysIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx+1],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-6 &&
amino_acids[cut_idx+6]==LysIdx &&
amino_acids[cut_idx+1] != LysIdx && amino_acids[cut_idx+1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx+4] != ArgIdx &&
amino_acids[cut_idx+5] != ArgIdx && amino_acids[cut_idx] != LysIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx+1],cut_prop);
r_idx+=num_aas;
// features of the form L|XK L|XXK L|XXXK L|XXXXK
if (cut_idx>0 &&cut_idx < length-1 &&
amino_acids[cut_idx+1]==LysIdx &&
amino_acids[cut_idx-1] != LysIdx && amino_acids[cut_idx-1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>0 &&cut_idx < length-2 &&
amino_acids[cut_idx+2]==LysIdx &&
amino_acids[cut_idx-1] != LysIdx && amino_acids[cut_idx-1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx+1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>0 &&cut_idx < length-3 &&
amino_acids[cut_idx+3]==LysIdx &&
amino_acids[cut_idx-1] != LysIdx && amino_acids[cut_idx-1] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>0 && cut_idx < length-4 &&
amino_acids[cut_idx+4]==LysIdx &&
amino_acids[cut_idx-1] != LysIdx && amino_acids[cut_idx-1] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx] != ArgIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
// features of the form |LXR |LXXR |LXXXR |LXXXXR
if (cut_idx < length-2 &&
amino_acids[cut_idx+2]==ArgIdx &&
amino_acids[cut_idx] != LysIdx && amino_acids[cut_idx] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-3 &&
amino_acids[cut_idx+3]==ArgIdx &&
amino_acids[cut_idx] != LysIdx && amino_acids[cut_idx] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-4 &&
amino_acids[cut_idx+4]==ArgIdx &&
amino_acids[cut_idx] != LysIdx && amino_acids[cut_idx] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-5 &&
amino_acids[cut_idx+5]==ArgIdx &&
amino_acids[cut_idx] != LysIdx && amino_acids[cut_idx] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx+4] != ArgIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
// features of the form |XLXR |XLXXR |XLXXXR |XLXXXXR
if (cut_idx < length-3 &&
amino_acids[cut_idx+3]==ArgIdx &&
amino_acids[cut_idx+1] != LysIdx && amino_acids[cut_idx+1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx] != LysIdx &&
amino_acids[cut_idx+2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx+1],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-4 &&
amino_acids[cut_idx+4]==ArgIdx &&
amino_acids[cut_idx+1] != LysIdx && amino_acids[cut_idx+1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx] != LysIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx+1],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-5 &&
amino_acids[cut_idx+5]==ArgIdx &&
amino_acids[cut_idx+1] != LysIdx && amino_acids[cut_idx+1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx+4] != ArgIdx &&
amino_acids[cut_idx] != LysIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx+1],cut_prop);
r_idx+=num_aas;
if (cut_idx < length-6 &&
amino_acids[cut_idx+6]==ArgIdx &&
amino_acids[cut_idx+1] != LysIdx && amino_acids[cut_idx+1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx+4] != ArgIdx &&
amino_acids[cut_idx+5] != ArgIdx && amino_acids[cut_idx] != LysIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx+1],cut_prop);
r_idx+=num_aas;
// features of the form L|XR L|XXR L|XXXR L|XXXXR
if (cut_idx>0 &&cut_idx < length-1 &&
amino_acids[cut_idx+1]==ArgIdx &&
amino_acids[cut_idx-1] != LysIdx && amino_acids[cut_idx-1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>0 &&cut_idx < length-2 &&
amino_acids[cut_idx+2]==ArgIdx &&
amino_acids[cut_idx-1] != LysIdx && amino_acids[cut_idx-1] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx && amino_acids[cut_idx+1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>0 &&cut_idx < length-3 &&
amino_acids[cut_idx+3]==ArgIdx &&
amino_acids[cut_idx-1] != LysIdx && amino_acids[cut_idx-1] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>0 && cut_idx < length-4 &&
amino_acids[cut_idx+4]==ArgIdx &&
amino_acids[cut_idx-1] != LysIdx && amino_acids[cut_idx-1] != ArgIdx &&
amino_acids[cut_idx+1] != ArgIdx && amino_acids[cut_idx+2] != ArgIdx &&
amino_acids[cut_idx+3] != ArgIdx && amino_acids[cut_idx] != ArgIdx )
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
// features of the form KXF KXXF KXXXF KXXXXF
if (cut_idx>2 && amino_acids[cut_idx-3] == LysIdx &&amino_acids[cut_idx-2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>3 && amino_acids[cut_idx-4] == LysIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>4 && amino_acids[cut_idx-5] == LysIdx && amino_acids[cut_idx-4] != ArgIdx &&
amino_acids[cut_idx-3] != ArgIdx && amino_acids[cut_idx-2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>5 && amino_acids[cut_idx-6] == LysIdx && amino_acids[cut_idx-5] != ArgIdx &&
amino_acids[cut_idx-4] != ArgIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
// features of the form KXFX KXXFX KXXXFX KXXXXFX
if (cut_idx>3 && amino_acids[cut_idx-4] == LysIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-2],cut_prop);
r_idx+=num_aas;
if (cut_idx>4 && amino_acids[cut_idx-5] == LysIdx && amino_acids[cut_idx-4] != ArgIdx &&
amino_acids[cut_idx-3] != ArgIdx && amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-2],cut_prop);
r_idx+=num_aas;
if (cut_idx>5 && amino_acids[cut_idx-6] == LysIdx && amino_acids[cut_idx-5] != ArgIdx &&
amino_acids[cut_idx-4] != ArgIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-2],cut_prop);
r_idx+=num_aas;
if (cut_idx>6 && amino_acids[cut_idx-7] == LysIdx && amino_acids[cut_idx-6] != ArgIdx &&
amino_acids[cut_idx-5] != ArgIdx && amino_acids[cut_idx-4] != ArgIdx &&
amino_acids[cut_idx-3] != ArgIdx && amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-2],cut_prop);
r_idx+=num_aas;
// features of the form KX|F KXX|F KXXX|F KXXXX|F
if (cut_idx>1 && cut_idx<length && amino_acids[cut_idx-2] == LysIdx &&
amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx>2 && cut_idx<length && amino_acids[cut_idx-3] == LysIdx &&
amino_acids[cut_idx-2] != ArgIdx && amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx>3 && cut_idx<length && amino_acids[cut_idx-4] == LysIdx &&
amino_acids[cut_idx-3] != ArgIdx && amino_acids[cut_idx-2] != ArgIdx &&
amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx>4 && cut_idx<length && amino_acids[cut_idx-5] == LysIdx &&
amino_acids[cut_idx-4] != ArgIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-2] != ArgIdx && amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
// features of the form RXF RXXF RXXXF RXXXXF
if (cut_idx>2 && amino_acids[cut_idx-3] == ArgIdx &&amino_acids[cut_idx-2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>3 && amino_acids[cut_idx-4] == ArgIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>4 && amino_acids[cut_idx-5] == ArgIdx && amino_acids[cut_idx-4] != ArgIdx &&
amino_acids[cut_idx-3] != ArgIdx && amino_acids[cut_idx-2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
if (cut_idx>5 && amino_acids[cut_idx-6] == ArgIdx && amino_acids[cut_idx-5] != ArgIdx &&
amino_acids[cut_idx-4] != ArgIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-2] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-1],cut_prop);
r_idx+=num_aas;
// features of the form RXFX RXXFX RXXXFX RXXXXFX
if (cut_idx>3 && amino_acids[cut_idx-4] == ArgIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-2],cut_prop);
r_idx+=num_aas;
if (cut_idx>4 && amino_acids[cut_idx-5] == ArgIdx && amino_acids[cut_idx-4] != ArgIdx &&
amino_acids[cut_idx-3] != ArgIdx && amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-2],cut_prop);
r_idx+=num_aas;
if (cut_idx>5 && amino_acids[cut_idx-6] == ArgIdx && amino_acids[cut_idx-5] != ArgIdx &&
amino_acids[cut_idx-4] != ArgIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-2],cut_prop);
r_idx+=num_aas;
if (cut_idx>6 && amino_acids[cut_idx-7] == ArgIdx && amino_acids[cut_idx-6] != ArgIdx &&
amino_acids[cut_idx-5] != ArgIdx && amino_acids[cut_idx-4] != ArgIdx &&
amino_acids[cut_idx-3] != ArgIdx && amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx-2],cut_prop);
r_idx+=num_aas;
// features of the form RX|F RXX|F RXXX|F RXXXX|F
if (cut_idx>1 && cut_idx<length && amino_acids[cut_idx-2] == ArgIdx &&
amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx>2 && cut_idx<length && amino_acids[cut_idx-3] == ArgIdx &&
amino_acids[cut_idx-2] != ArgIdx && amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx>3 && cut_idx<length && amino_acids[cut_idx-4] == ArgIdx &&
amino_acids[cut_idx-3] != ArgIdx && amino_acids[cut_idx-2] != ArgIdx &&
amino_acids[cut_idx-1] != ArgIdx)
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
if (cut_idx>4 && cut_idx<length && amino_acids[cut_idx-5] == ArgIdx &&
amino_acids[cut_idx-4] != ArgIdx && amino_acids[cut_idx-3] != ArgIdx &&
amino_acids[cut_idx-2] != ArgIdx && amino_acids[cut_idx-1] != ArgIdx)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?