peakrank_advanced.cpp
来自「MS-Clustering is designed to rapidly clu」· C++ 代码 · 共 1,022 行 · 第 1/3 页
CPP
1,022 行
sample.add_real_feature(r_idx+amino_acids[cut_idx],cut_prop);
r_idx+=num_aas;
// Add sepcial C-terminal features
const int c_cut_dis = length - cut_idx;
if (c_cut_dis<=5 && amino_acids[length-1]==LysIdx)
{
if (c_aa_counts[LeuIdx]>0 &&
(c_aa_counts[AspIdx]+c_aa_counts[GluIdx]>0 &&
c_aa_counts[LeuIdx] + c_aa_counts[GluIdx] + +c_aa_counts[AspIdx] +
c_aa_counts[LysIdx] == c_cut_dis) )
sample.add_real_feature(r_idx,c_cut_dis);
r_idx++;
if (c_aa_counts[LeuIdx]>0 && c_aa_counts[AlaIdx]>0 &&
c_aa_counts[LeuIdx] + c_aa_counts[AlaIdx] + c_aa_counts[LysIdx] == c_cut_dis)
sample.add_real_feature(r_idx,c_cut_dis);
r_idx++;
if (c_cut_dis>=3 && c_aa_counts[LeuIdx] + c_aa_counts[LysIdx] + c_aa_counts[GluIdx] +
c_aa_counts[AspIdx] == c_cut_dis-1)
sample.add_real_feature(r_idx,c_cut_dis);
r_idx++;
}
else
r_idx+=3;
if (amino_acids[length-1]==ArgIdx && cut_idx<length-1)
{
if (c_aa_counts[LeuIdx] + c_aa_counts[ArgIdx] + c_aa_counts[GluIdx] +
c_aa_counts[AspIdx] == c_cut_dis)
sample.add_real_feature(r_idx,c_cut_dis);
}
r_idx++;
}
void push_back_all_RHK_pairs(vector<string>& real_feature_names, string prefix_label)
{
int n;
for (n=0; n<num_RKH_combos; n++)
{
int c;
for (c=0; c<num_RKH_combos; c++)
{
string label = prefix_label + " " + combos[n] + "/" + combos[c];
real_feature_names.push_back(label);
}
}
}
void PeakRankModel::set_advanced_feature_names()
{
const int num_aas = this->get_num_model_aas();
int i;
real_feature_names.clear();
real_feature_stage_idxs.clear();
real_feature_names.push_back("N RKH LEVEL");
real_feature_names.push_back("C RKH LEVEL");
real_feature_names.push_back("PROP PEAK MASS IN VIS RANGE");
push_back_all_RHK_pairs(real_feature_names,"PROP PEAK MASS IN VIS RANGE");
real_feature_names.push_back("DIS FROM MIN");
push_back_all_RHK_pairs(real_feature_names,"DIS FROM MIN");
real_feature_names.push_back("DIS FROM MAX");
push_back_all_RHK_pairs(real_feature_names,"DIS FROM MAX");
real_feature_names.push_back("CUT POS");
push_back_all_RHK_pairs(real_feature_names,"CUT POS");
real_feature_names.push_back("DIS MIN<75, CUT POS");
real_feature_names.push_back("DIS MIN<150, CUT POS");
real_feature_names.push_back("DIS MIN<250, CUT POS");
real_feature_names.push_back("DIS MIN<=400, CUT POS");
real_feature_names.push_back("DIS MAX<75, CUT POS");
real_feature_names.push_back("DIS MAX<150, CUT POS");
real_feature_names.push_back("DIS MAX<250, CUT POS");
real_feature_names.push_back("DIS MAX<=400, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("#N-SIDE " + model_aa_labels[i] + "(without flanking 3)");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("#C-SIDE " + model_aa_labels[i] + "(without flanking 3)");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("#N-SIDE " + model_aa_labels[i]);
for (i=0; i<num_aas; i++)
real_feature_names.push_back("#C-SIDE " + model_aa_labels[i]);
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT -1 = " + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT -2 = " + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT -3 = " + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT +1 = " + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT +2 = " + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT +3 = " + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
{
int j;
for (j=0; j<num_aas; j++)
real_feature_names.push_back("CUT IS " + model_aa_labels[i] + "-" + model_aa_labels[j] + ", CUT POS");
}
for (i=0; i<num_aas; i++)
{
int j;
for (j=0; j<num_aas; j++)
real_feature_names.push_back("CUT IS " + model_aa_labels[i] + "-" + model_aa_labels[j] + ", PEAK PROP");
}
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT -1 = " + model_aa_labels[i] + ", RHK LEVEL");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT -2 = " + model_aa_labels[i] + ", RHK LEVEL");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT -3 = " + model_aa_labels[i] + ", RHK LEVEL");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT +1 = " + model_aa_labels[i] + ", RHK LEVEL");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT +2 = " + model_aa_labels[i] + ", RHK LEVEL");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT +3 = " + model_aa_labels[i] + ", RHK LEVEL");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT -1 = " + model_aa_labels[i] + ", PEAK PROP");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT -2 = " + model_aa_labels[i] + ", PEAK PROP");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT -3 = " + model_aa_labels[i] + ", PEAK PROP");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT +1 = " + model_aa_labels[i] + ", PEAK PROP");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT +2 = " + model_aa_labels[i] + ", PEAK PROP");
for (i=0; i<num_aas; i++)
real_feature_names.push_back("CUT +3 = " + model_aa_labels[i] + ", PEAK PROP");
for (i=0; i<num_aas; i++)
{
int j;
for (j=0; j<num_aas; j++)
real_feature_names.push_back(model_aa_labels[i] + model_aa_labels[j] + " BEFORE CUT, CUT POS");
}
for (i=0; i<num_aas; i++)
{
int j;
for (j=0; j<num_aas; j++)
real_feature_names.push_back(model_aa_labels[i] + model_aa_labels[j] + " AFTER CUT, CUT POS");
}
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|"+ model_aa_labels[i] + "XK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|"+ model_aa_labels[i] + "XXK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|"+ model_aa_labels[i] + "XXXK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|"+ model_aa_labels[i] + "XXXXK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|X"+ model_aa_labels[i] + "XK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|X"+ model_aa_labels[i] + "XXK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|X"+ model_aa_labels[i] + "XXXK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|X"+ model_aa_labels[i] + "XXXXK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( model_aa_labels[i] + "|XK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( model_aa_labels[i] + "|XXK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( model_aa_labels[i] + "|XXXK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( model_aa_labels[i] + "|XXXXK, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|"+ model_aa_labels[i] + "XR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|"+ model_aa_labels[i] + "XXR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|"+ model_aa_labels[i] + "XXXR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|"+ model_aa_labels[i] + "XXXXR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|X"+ model_aa_labels[i] + "XR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|X"+ model_aa_labels[i] + "XXR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|X"+ model_aa_labels[i] + "XXXR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "|X"+ model_aa_labels[i] + "XXXXR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( model_aa_labels[i] + "|XR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( model_aa_labels[i] + "|XXR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( model_aa_labels[i] + "|XXXR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( model_aa_labels[i] + "|XXXXR, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KX" + model_aa_labels[i] + "|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KXX" + model_aa_labels[i] + "|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KXXX" + model_aa_labels[i] + "|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KXXXX" + model_aa_labels[i] + "|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KX" + model_aa_labels[i] + "X|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KXX" + model_aa_labels[i] + "X|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KXXX" + model_aa_labels[i] + "X|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KXXXX" + model_aa_labels[i] + "X|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KX|" + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KXX|" + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KXXX|" + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "KXXXX|" + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RX" + model_aa_labels[i] + "|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RXX" + model_aa_labels[i] + "|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RXXX" + model_aa_labels[i] + "|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RXXXX" + model_aa_labels[i] + "|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RX" + model_aa_labels[i] + "X|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RXX" + model_aa_labels[i] + "X|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RXXX" + model_aa_labels[i] + "X|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RXXXX" + model_aa_labels[i] + "X|, CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RX|" + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RXX|" + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RXXX|" + model_aa_labels[i] + ", CUT POS");
for (i=0; i<num_aas; i++)
real_feature_names.push_back( "RXXXX|" + model_aa_labels[i] + ", CUT POS");
real_feature_names.push_back("|[LD/EK] - permuted");
real_feature_names.push_back("|[LAK] - permuted");
real_feature_names.push_back("|[LDEK] - permuted with one X");
real_feature_names.push_back("|[LDER] - permuted");
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?