我有一个AWK脚本,根据分数对序列进行着色,它对RGB模式下的残差进行着色,这些序列可以使用某些软件进行可视化.问题是脚本颜色为红色,分数范围较高,绿色为中等,白色为低范围我希望以某种方式改变它,以便为低范围分配红色,为中间分配蓝色,或者换句话说,我希望脚本以另一种方式工作,从低到高不高到低.我怎么处理这个问题.我是一名生物学家,我不知道awk是如何运作的.请帮我解决这个问题.
着色是基于此. http://www.pymolwiki.org/index.php/Spectrum
/usr/bin/awk -v aa_shift=$2 '
BEGIN{
r1=1; g1=1; b1=1;
r2=1; g2=1; b2=0;
r3=1; g3=0; b3=0;
maxfrq=-1*10000;
minfrq=1*10000;
aan=0;
}
{
if ($1!="" && $2!="") {
aan++;
aa_ind[aan]=1.0*$2;
aa_frq[aan]=1.0*$3;
}
}
END{
for(i=1;i<=aan;i++) {
if(aa_frq[i]>maxfrq) {
maxfrq=aa_frq[i];
}
if(aa_frq[i]<minfrq) {
minfrq=aa_frq[i];
}
}
half=(maxfrq-minfrq)/2
for(i=1;i<=aan;i++) {
aa_frq[i]=aa_frq[i]-minfrq
if (aa_frq[i]<half) {
fraction=aa_frq[i]/half
aa_r[i]=r1+fraction*(r2-r1)
aa_g[i]=g1+fraction*(g2-g1)
aa_b[i]=b1+fraction*(b2-b1)
} else {
fraction=(aa_frq[i]-half)/half
aa_r[i]=r2+fraction*(r3-r2)
aa_g[i]=g2+fraction*(g3-g2)
aa_b[i]=b2+fraction*(b3-b2)
}
print "set_color c" i ", [" aa_r[i] "," aa_g[i] "," aa_b[i] "]"
print "color c" i ", …Run Code Online (Sandbox Code Playgroud) 我是Python的初学者(我是一名生物学家),我有一个文件,其中包含特定软件的结果,我想使用python解析结果.从以下输出中我想获得得分,并希望将序列分成单个氨基酸.
没有.得分序列
1 0.273778 FFHH-YYFLHRRRKKCCNNN-CCCK---HQQ---HHKKHV-FGGGE-EDDEDEEEEEEEE-EE--
2 0.394647 IIVVIVVVVIVVVVVVVVVV-CCCVA-IVVI--LIIIIIIIIYYYA-AVVVVVVVAAAAV-AST-
3 0.456667 FIVVIVVVVIXXXXIGGGGT-CCCCAV -------------IVBBB-AAAAAA--------AAAA-
4 0.407581 MMLMILLLLMVVAIILLIII-LLLIVLLAVVVVVAAAVAAVAIIII-ILIIIIIILVIMKKMLA-
5 0.331761 AANSRQSNAAQRRQCSNNNR-RALERGGMFFRRKQNNQKQKKHHHY-FYFYYSNNWWFFFFFFR-
6 0.452381 EEEEDEEEEEEEEEEEEEEE-EEEEESSTSTTTAEEEEEEEEEEEE-EEEEEEEEEEEEEEEEE-
7 0.460385 LLLLLLLLMMIIILLLIIII-IIILLVILMMEEFLLLLILIVLLLM-LLLLLLLLLLVILLLVL-
8 0.438680 ILILLVVVVILVVVLQLLMM-QKQLIVVLLVIIMLLLLMLLSIIIS-SMMMILFFLLILIIVVL-
9 0.393291 QQQDEEEQAAEEEDEKGSSD-QQEQDDQDEEAAAHQLESSATVVQR-QQQQQVVYTHSTVTTTE-
Run Code Online (Sandbox Code Playgroud)
从上表中,我想获得一个具有相同数字,得分的表,但序列分开(列式),所以它应该看起来像
no. score amino acid(1st column)
1 0.273778 F
2 0.395657 I
3 0.456667 F
Run Code Online (Sandbox Code Playgroud)
另一个表示第二列氨基酸的表
no score amino acid (2nd column)
1 0.273778 F
2 0.395657 I
3 0.456667 I
Run Code Online (Sandbox Code Playgroud)
表示第三列氨基酸的第三表和第四列氨基酸的第四表等
在此先感谢您的帮助