我有数据设置如下:
引用:HBOND摘要输出到文件HB_lowLyo_D_lipid_A_water_001_064.tbl,数据排序,内残留的相互作用不包括在内,距离截止是4.00埃,角度截止是120.00度对于倾倒入住率和GT氢键的信息; 0.00DONOR ACCEPTORH ACCEPTOR原子#@水库原子一个原子#@ RES原子一个原子#@ RES原子%占据角距离| 4645 58 @ O12 | 23489 1174 // @ H1 23488 1174 // @Ô| 22.79 2.945(0.28)26.79(14.41)| 4645 58 @ O12 | 23490 1174 // @ H2 23488 1174 // @Ô| 22.49 2.965(0.31)28.01(14.47)| 2701 34 @ O12 | 23333 1122 // @ H1 23332 1122 // @Ô| 20.60 2.965(0.23)30.07(14.18)| 2701 34 @ O12 | 23334 1122 // @ H2 23332 1122 // @Ô| 19.74 2.963(0.23)31.43(13.88)| 271 4 @ O12 | 23334 1122 // @ H2 23332 1122 // @Ô| 19.70 2.825(0.19)21.92(12.15)| 271 4 @ O12 | 23333 1122 // @ H1 23332 1122 // @Ô| 19.55 2.826(0.19)22.22(12.71)| 4655 58 @ O16 | 21156 396 @ H2 21154 396 @Ô| 19.43 2.933(0.22)31.95(15.18)| 4658 58 @ O15 | 21156 396 @ H2 21154 396 @Ô| 18.96 3.163(0.27)37.03(14.63)| 4310 54 @ O26 | 23202 1078 // @ H2 23200 1078 // @Ô| 18.73 2.821(0.24)25.87(13.92)| 4655 58 @ O16 | 21155 396 @ H1 21154 396 @Ô| 18.63 2.917(0.22)31.91(15.00)| 1820 23 @ O16 | 21167 400 @ H1 21166 400 @Ô| 18.14 2.910(0.22)27.20(13.87)| 1820 23 @ O16 | 21168 400 @ H2 21166 400 @Ô| 17.96 2.907(0.21)26.69(13.86)| 3845 48 @ O16 | 23454 1162 // @ H2 23452 1162 // @Ô| 17.68 2.991(0.31)28.45(14.88)| 4658 58 @ O15 | 21155 396 @ H1 21154 396 @Ô| 17.31 3.177(0.27)38.82(14.69)| 3845 48 @ O16 | 23453 1162 // @ H1 23452 1162 // @Ô| 17.29 3.016(0.32)28.84(14.57)| 1489 @ 19 O13 | 23201 1078 // @ H1 23200 1078 // @Ô| 16.66 2.884(0.23)31.39(15.56)| 3824 48 @ O26 | 21099 377 @ H2 21097 377 @Ô| 15.44 2.992(0.30)30.78(15.01)| 4253 53 @ O15 | 23454 1162 // @ H2 23452 1162 // @Ô| 14.98 2.961(0.27)33.71(15.09)| 1459 @ 19 O22 | 23201 1078 // @ H1 23200 1078 // @Ô| 14.84 3.012(0.33)35.08(16.12)| 1081 14 @ O12 | 21173 402 @ H1 21172 402 @Ô| 14.76 2.937(0.24)27.54(14.26)| 4253 53 @ O15 | 23453 1162 // @ H1 23452 1162 // @Ô| 14.63 2.955(0.25)33.68(15.11)| 1081 14 @ O12 | 21174 402 @ H2 21172 402 @Ô| 14.41 2.944(0.25)28.34(14.35)| 3824 48 @ O26 | 21098 377 @ H1 21097 377 @Ô| 13.70 3.002(0.30)31.00(15.21)| 3845 48 @ O16 | 21156 396 @ H2 21154 396 @Ô| 13.06 2.934(0.26)27.71(14.05)。。。有总共约40,000线。
我想选择的条件第3,并在1-64之间的范围内第6场秋季数字的@符号之前。
线我曾尝试与AWK像这样code
的awk'$ 3〜/ ^ [0-9] /&放大器;&安培; $ 6〜/ ^ [0-9] / {}打印hhHB_LL1000_D_lipid_A_water_001_064.tbl |头解决方案
如果我正确跨preT您的输入,这些都是应落在区间[1-64]中的字段:
| 4645 58 @ O12 | 23489 1174 // @ H1 23488 1174 // @Ô| 22.79 2.945(0.28)26.79(14.41) ^^_______ | ______ |据我所知,没有什么你,你已经张贴输入有这种行为...
使用以下awk脚本:
/ ^ | / { 拆分($ 3,@) 拆分($ 6,B,@) 如果(一个[1]≥= 1和;&放大器;一个[1] = 64&放大器;和b [1]≥= 1和;和b [1] = 64)打印}如果我加一条线,你输入:
| 3845 48 @ O16 | 21156 39 @ H2 21154 396 @Ô| 13.06 2.934(0.26)27.71(14.05) ^^_______ | ______ |本脚本输出:
$ AWK -f digits.awk digits.txt| 3845 48 @ O16 | 21156 39 @ H2 21154 396 @Ô| 13.06 2.934(0.26)27.71(14.05)I have data set as below:
Quote: HBOND SUMMARY output to file HB_lowLyo_D_lipid_A_water_001_064.tbl, data was sorted, intra-residue interactions are NOT included, Distance cutoff is 4.00 angstroms, angle cutoff is 120.00 degrees Hydrogen bond information dumped for occupancies > 0.00 DONOR ACCEPTORH ACCEPTOR atom# res@atom atom# res@atom atom# res@atom %occupied distance angle | 4645 58@O12 | 23489 1174@H1 23488 1174@O | 22.79 2.945 ( 0.28) 26.79 (14.41) | 4645 58@O12 | 23490 1174@H2 23488 1174@O | 22.49 2.965 ( 0.31) 28.01 (14.47) | 2701 34@O12 | 23333 1122@H1 23332 1122@O | 20.60 2.965 ( 0.23) 30.07 (14.18) | 2701 34@O12 | 23334 1122@H2 23332 1122@O | 19.74 2.963 ( 0.23) 31.43 (13.88) | 271 4@O12 | 23334 1122@H2 23332 1122@O | 19.70 2.825 ( 0.19) 21.92 (12.15) | 271 4@O12 | 23333 1122@H1 23332 1122@O | 19.55 2.826 ( 0.19) 22.22 (12.71) | 4655 58@O16 | 21156 396@H2 21154 396@O | 19.43 2.933 ( 0.22) 31.95 (15.18) | 4658 58@O15 | 21156 396@H2 21154 396@O | 18.96 3.163 ( 0.27) 37.03 (14.63) | 4310 54@O26 | 23202 1078@H2 23200 1078@O | 18.73 2.821 ( 0.24) 25.87 (13.92) | 4655 58@O16 | 21155 396@H1 21154 396@O | 18.63 2.917 ( 0.22) 31.91 (15.00) | 1820 23@O16 | 21167 400@H1 21166 400@O | 18.14 2.910 ( 0.22) 27.20 (13.87) | 1820 23@O16 | 21168 400@H2 21166 400@O | 17.96 2.907 ( 0.21) 26.69 (13.86) | 3845 48@O16 | 23454 1162@H2 23452 1162@O | 17.68 2.991 ( 0.31) 28.45 (14.88) | 4658 58@O15 | 21155 396@H1 21154 396@O | 17.31 3.177 ( 0.27) 38.82 (14.69) | 3845 48@O16 | 23453 1162@H1 23452 1162@O | 17.29 3.016 ( 0.32) 28.84 (14.57) | 1489 19@O13 | 23201 1078@H1 23200 1078@O | 16.66 2.884 ( 0.23) 31.39 (15.56) | 3824 48@O26 | 21099 377@H2 21097 377@O | 15.44 2.992 ( 0.30) 30.78 (15.01) | 4253 53@O15 | 23454 1162@H2 23452 1162@O | 14.98 2.961 ( 0.27) 33.71 (15.09) | 1459 19@O22 | 23201 1078@H1 23200 1078@O | 14.84 3.012 ( 0.33) 35.08 (16.12) | 1081 14@O12 | 21173 402@H1 21172 402@O | 14.76 2.937 ( 0.24) 27.54 (14.26) | 4253 53@O15 | 23453 1162@H1 23452 1162@O | 14.63 2.955 ( 0.25) 33.68 (15.11) | 1081 14@O12 | 21174 402@H2 21172 402@O | 14.41 2.944 ( 0.25) 28.34 (14.35) | 3824 48@O26 | 21098 377@H1 21097 377@O | 13.70 3.002 ( 0.30) 31.00 (15.21) | 3845 48@O16 | 21156 396@H2 21154 396@O | 13.06 2.934 ( 0.26) 27.71 (14.05) . . .There are total of about 40,000 lines.
I want to choose lines with the condition the digits in 3rd and 6th field fall in the range between 1-64 before the "@" symbol.
I have tried with the awk something like this code
awk '$3 ~ /^[0-9]/ && $6 ~ /^[0-9]/ {print}' hhHB_LL1000_D_lipid_A_water_001_064.tbl | head解决方案
If I interpret your input correctly, these are the fields that should fall within the range [1-64]:
| 4645 58@O12 | 23489 1174@H1 23488 1174@O | 22.79 2.945 ( 0.28) 26.79 (14.41) ^ ^ _______| ______|As far as I can tell, nothing in you're input that you have posted has this behavior...
Use this awk-script:
/^|/{ split($3, a, "@") split($6, b, "@") if(a[1] >= 1 && a[1] <= 64 && b[1] >=1 && b[1] <= 64) print }If I add a a line to you're input:
| 3845 48@O16 | 21156 39@H2 21154 396@O | 13.06 2.934 ( 0.26) 27.71 (14.05) ^ ^ _______| ______|This script outputs:
$ awk -f digits.awk digits.txt | 3845 48@O16 | 21156 39@H2 21154 396@O | 13.06 2.934 ( 0.26) 27.71 (14.05)
更多推荐
从常规的前pression选择数字
发布评论