Enzyme Evolution and Vim
文章目录
Enzyme evolution
我一直都对比较大的蓝图感兴趣,如果当时有意识地去选择,自己可能就会去做Bioinformatics相关的研究了。(为什么不去当码农。。。)可能因为这个的缘故,我对enzyme evolution也一直有那么点兴趣。
去年 Doug sabbatical,于是他们组有半年与我们组一起开联合组会,我也得知这一与我们同幢楼的实验室具体是做的什么。今年年初的时候学校搞了个 minicourse in statistics,Doug也在其中开了一门 *Bayesian Methods for Analysis of Protein Evolution*。一眼督见后面两个单词的我想着正和朕意,便报名上课。课程很短,除去一天基本上是废话基础介绍的Linux/R的入门课外,正式课程只有三天。而在其中Doug讲了两天的概率(我还没带纸笔,只能用Emacs来记笔记,简直头大)。不过第三天的实战(BLAST+ClustalOmega+Phyml+BAli-Phy)确实算带我入了门。不得不说一个搞生化研究的老师比一个搞计算机的老师在演示BLAST时,关注的重点要实用许多。
不过虽然有上手操作,这毕竟还是课程,而我缺少课堂学习的能力,所以还需实例演示。也是凑巧,Doug昨天讲了个seminar,正是关于他如何用evolutionary手段玩弄LDH和MDH两种酶的,听完之后基本上明白了实战的思路,回家又顶着高烧扫了一遍他的文章们,大致也摸出了基本的套路:
- 他们组自己关于LDH/MDH的几篇文章:和seminar上讲的差不多,但是有具体的实验方法说明呀;
- 他的几篇理论性文章:跟他上课的内容互为补充;
- 他和其他组合作的文章:和Miller爷爷合作的ion channel的,和Oprian合作的rhodopsin的,和Kern合作的thermoadaptation的,和Garrity合作的果蝇thermosensor的。只想吐槽好多Nature Science啊。。
然后我就跃跃欲试了。然后就遇到了fasta文件预处理的问题,然后不折腾不死星人便想着,刚好最近用过几次Vim,要不就用它来预处理吧。于是文章的第二部分诞生了。
Vim中查找与替换
vim中查找是/,替换是:s,基本命令是:[range]s/search/replace/[flags]
。
其中[range]
可以为1,10
, 1,
, 1
, %
,最后一个是所有行;
[flags]
可以为c
confirm, e
error不显示, g
global整行,i
ignore大小写 。
元字符有.
, *
, \
, [
, ^
, $
, 使用时需转义。
通配符 | 说明 |
---|---|
. | 任意字符 |
[abc] | 方括号以内的任意字符 |
[\^abc] | 除方括号以外的任意字符 |
\d | 阿拉伯数字,即[0-9] |
\D | [\^0-9] |
\x | 十六进制数字,即[0-9A-Fa-f] |
\X | [\^0-9A-Fa-f] |
\l | 小写字母,即[a-z] |
\L | [\^a-z] |
\u | 大写字母,即[A-Z] |
\U | [\^A-Z] |
\w | 单词字母,即[0-9A-Za-Z_] |
\W | [\^0-9A-Za-Z_] |
\t | <TAB> |
\s | 空白字符,即[\t] |
\S | [\^\t] |
数量 | 说明 |
---|---|
* | 0-任意个 |
\+ | 1-任意个 |
\? | 0-1个 |
\{n,m} | n-m个 |
\{n} | n个 |
\{n,} | n-任意个 |
\{,m} | 0-m个 |
位置 | 说明 |
---|---|
^ | 行首 |
$ | 行尾 |
\< | 词首 |
\> | 词尾 |
后来发现好像sed
更好用,不过也没差啦。
参考:
文章作者 ziyunch
上次更新 2017-02-04