基因组序列的共线性分析

1 LASTZ

13742_2016_141_fig5_html

Ref:http://www.bx.psu.edu/miller_lab/dist/README.lastz-1.02.00/README.lastz-1.02.00a.html

Paper:https://gigascience.biomedcentral.com/articles/10.1186/s13742-016-0141-6

2 Gepard 

f4-large

Ref:http://cube.univie.ac.at/gepard

Paper:http://www.plantcell.org/content/23/1/27

3 MAUVE ( Multiple Alignment of Conserved Genomic Sequence )

fmicb-02-00236-g001

Ref:darlinglab.org/mauve/mauve.html

4 MCscanX

circle

dual_synteny

dot

MCScanX采用改进了的MCScan算法,分析基因组内或者基因组间的共线性区块。它利用两个物种蛋白质blastp比对结果,再结合这些蛋白质基因在基因组中的位置,得到两个物种基因组的共线性区块。如果是分析基因组内的共线性区块,物种内蛋白质自己比对自己就好了。

Ref:http://chibba.pgml.uga.edu/mcscan2/examples/example7.php

5 C-Sibelia: an easy-to-use and highly accurate tool for bacterial genome comparison

9c8a61c3-6abf-49a0-8637-fec6d0ed1aa7_figure1

ref:

6 SyMAP (http://www.symapdb.org/)

alignment2d

Advertisements
发表在 Bioinformatics

SSPACE: Can’t locate getopts.pl

问题:运行SSPACE_Standard_v3.0.pl报错。

Can’t locate getopts.pl in @INC (@INC contains: /xxx/SSPACE-STANDARD/dotlib/ /home/fenglei-cuhk/perl5/lib/perl5 /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/perl/5.18.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.18 /usr/share/perl/5.18 /usr/local/lib/site_perl .) at /home/xx/SSPACE-STANDARD/SSPACE_Standard_v3.0.pl line 124.

原因:

getopts.pl is a Perl 4 core library but no longer included in current Perl 5 distributions.

解决办法:

在Linux命令行模式下输入“perl -MCPAN -e shell”进入perl界面,然后输入“install Perl4::CoreLibs”即可。

 

 

发表在 Bioinformatics, Linux

Shell编程:获取文件前缀字符串

比如处理名为 /xxx/yyy/zzz/abc2017.1.fq.gz 的文件,我们需要获取abc2017这个文件名。

i=/xxx/yyy/zzz/abc2017.1.fq.gz

IN=$i      
# read1文件绝对路径:/xxx/yyy/zzz/abc2017.1.fq.gz

path=${IN%/*}        
# Read1文件的绝对路径前缀,以“/”作为分隔界限并获取界限之前的字符串:/xxx/yyy/zzz

sample=${path##*/}       
# Read1所在文件夹名称,即 zzz

prefix=${IN%.1*}             
# Read1与Read2两个文件共有的路径前缀,即以“.1”作为分隔界限并获取界限之前的字符串 /xxx/yyy/zzz/abc2017

sample=${prefix##*/}   
# sample的名称 abc2017
发表在 Bioinformatics, Linux

shellcheck: 自动检测shell脚本的语法

生物信息分析工作中,可以将数据操作命令写入shell脚本,一方面方便自动化运行,另一方面是将操作记录存档,便于日后查阅。

但是shell脚本也会因人为疏忽而存在错误,我想有没有程序可以检测脚本的正确性呢,一查果然有shellcheck之类的程序。shellcheck有在线版:http://www.shellcheck.net/

shellcheck也有本地版,安装有多种方法,可参考官方网站:https://github.com/koalaman/shellcheck

我直接下载了编译好的程序:https://storage.googleapis.com/shellcheck/shellcheck-latest.linux.x86_64.tar.xz

解压之后,即可使用。

使用方法:shellcheck myscript.sh

 

 

发表在 Linux

Shell脚本 “set Illegal option -o pipefail”

在Linux编写Shell 脚本程序的时候,set -o pipefail是很实用的命令。因为Shell脚本中通常有一连串的动作需要执行,一旦某个环节出错,如果设定了pipefail,脚本会立即中断运行;而如果没有设定,脚本将继续执行后续命令,可能造成错误。

然而在Ubuntu中,当使用“set -o pipefail”的时候,一直报错:

set Illegal option -o pipefail

经查,原因是Ubuntu的 shell 默认安装的是 dash,而不是 bash。
运行以下命令查看 sh 的详细信息,确认 shell 对应的程序是哪个:
$ls -al /bin/sh

dash 比 bash 更轻,更快。但 bash 却更常用。
如果一些命令、脚本等总不能正常执行,有可能是 dash 的原因。
比如编译 Android 源代码的时候,如果使用 dash,则有可能编译出错,或者编译的系统不能启动。

通过以下方式可以使 shell 切换回 bash:
$sudo dpkg-reconfigure dash
然后选择 no 或者 否 ,并确认。
这样做将重新配置 dash,并使其不作为默认的 shell 工具。

也可以直接修改 /bin/sh 链接文件,将其指定到 /bin/bash:
$sudo ln -fs /bin/bash /bin/sh Read more ›

发表在 Bioinformatics, Linux

恒生银行信用卡Cash Dollar优惠登记

由2017年7月1日至2018年6月30日,憑大學/大專聯營信用卡只需登記1次^,由登記月份起作以下簽賬交易,均可賺取高達5倍Cash Dollars:

1)拨打29986038,选择语言,点3选英语;
2)选3,教育优惠Cash Dollar登记;
3)输入16位信用卡账户,以“#”(pound)结束;
4)收到语音提示之后,按“1”确认;
5)收到语音播报七位数Reference Number,然后会提示是否结束服务,按“9”即结束服务。

参考:
http://www.hangseng.com/cms/emkt/pmo/grp05/p10/chi/index.html

细则

大 學 / 大 專 聯 營 信 用 卡 「 高 達 5x Cash Dollars 自 我 增 值 獎 賞 」

優惠期由2017年7月1日至2018年6月30日(「優惠期」)。

客戶於優惠期內致電2998 6038登記1次,成功登記後,憑大學/大專聯營信用卡於登記之月份至2018年6月30日內之合資格交易均可享有高達5倍恒生信用卡Cash Dollars(包括原有之基本Cash Dollars)。[案:去年登記過的,今年需要重新登記。

適用於5倍恒生信用卡Cash Dollars之合資格交易包括:(i)於本地或網上書店購物及/或(ii)支付本地及海外公開考試費用;適用於3倍恒生信用卡Cash Dollars之合資格交易包括:報讀本地及海外各大院校辦學機構舉辦之課程,根據持續進修基金可獲發還款項課程名單為準,並成功於2018年7月16日或之前誌賬於信用卡戶口內之簽賬。

每個成功登記之信用卡戶口於優惠期內最多只可額外獲享合共$300 Cash Dollars,包括(i)於本地或網上書店購物及/或(ii)支付本地及海外公開考試費用而額外獲享之$200 Cash Dollars及報讀本地及海外各大院校辦學機構舉辦之課程,根據持續進修基金可獲發還款項課程名單為準,而額外獲享之簽賬以同一信用卡戶口計算,包括以同一主卡戶口過賬之附屬卡之簽賬。

以每次單一簽賬計算及所獲取之Cash Dollars以整數為單位,不足$1 Cash Dollar則不獲計算。

附:CUHK缴学费的流程。

第一,先去登记3X cash dollar,如上文。
第二,登入你的恒生e-banking,点账户服务→缴付账单→缴帐→新增;商户
商户类别:Education Institutions
商户:The Chinese University of Hong Kong
账单户口号码:进入中大CUSIS→make a payment→pay amount→next,之后有一个Payment Reference,就是这个。
账单类别:01 Tuition,Hostel...
金额:xxx(学费金额)
支账户口:选择信用卡户口,会有信用卡号码,别点成储蓄卡户口。
点击付款确认就ok了。
发表在 Life

Infernal和hmmer程序的安装

再Rfam数据库对small RNA进行注释的过程中需要用到Infernal,但是安装遇到问题。configure之后,make不成功,报错“fatal error: config.h: No such file”,下面是解决方案。

hmmer就是一款比对软件,类似于blast等,它使用马尔可夫概率模型的方法。HMMER的目的是更准确的探测到远程同源序列,它提供的比对结果要比blast更加精确,相应的速度也要慢。在功能基因研究中需要使用到序列搜索,比如从序列数据库中,找同源的序列,或者对一个新的基因功能进行鉴定,使用hmmer比使用blast有着更高的灵敏度以及更高的搜索速度,但其应用还远没有blast普及。

hmmer安装的参考资料是:

curl -O ftp://selab.janelia.org/pub/software/hmmer3/3.1b1/hmmer-3.1b1.tar.gz
tar xzf hmmer-3.1b1.tar.gz
cd hmmer-3.1b1/
./configure --prefix=/usr && make && make install

但是我安装过程中报错:

make[2]: Entering directory '/home/fenglei/local/app/infernal/easel/miniapps'
 CC esl-afetch.o
 GEN esl-afetch
 CC esl-alimanip.o
In file included from /home/fenglei/local/include/assert.h:5:0,
 from esl-alimanip.c:8:
/home/fenglei/local/include/except.h:5:44: fatal error: config.h: No such file or directory
 #include  /* For HAVE_PTHREAD */
 ^
compilation terminated.
make[2]: *** [Makefile:123: esl-alimanip.o] Error 1
make[2]: Leaving directory '/home/fenglei/local/app/infernal/easel/miniapps'
make[1]: *** [Makefile:377: all] Error 2
make[1]: Leaving directory '/home/fenglei/local/app/infernal/easel'
make: *** [Makefile:103: all] Error 2 

原因:

现在较新的内核已经弃用了config.h,把这个文件新建上去即可。

解决办法:执行命令(注意路径的不同):

cd easel
vi config.h

在vi界面输入下述内容,随后保存退出。

 #ifndef _LINUX_CONFIG_H
 #define _LINUX_CONFIG_H
 #endif

随后成功安装。

make && make install

参考资料
http://2013-caltech-workshop.readthedocs.io/en/latest/prokka-annotation.html
https://lzw.me/a/linux-config-no-such-file-or-directory.html/comment-page-1#comment-80998

发表在 Bioinformatics, Linux