重新格式化和压缩多个序列对齐以突出可变性
alnvu的Python项目详细描述
alnvu使生物序列的多重对齐 通过浓缩和突出可变性,易于阅读。
生成纯文本、HTML和PDF格式的多个对齐。
依赖关系
必需:
- Python 2.7, 3.5+
- ^{tt2}$ (https://github.com/nhoffman/fastalite)
可选:
- ^{tt3}$ (http://www.reportlab.com/software/opensource/) for pdf output.
- ^{tt4}$ (http://biopython.org/) to sort alignments in tree order.
- ^{tt5}$ (http://jinja.pocoo.org/) for rendering html templates.
安装
使用pip:
安装最简单pip install alnvu
要从github上的源安装,请首先克隆存储库。
使用setup.py:
cd alnvu python setup.py install
使用pip:
cd alnvu pip install .
示例
% cd alnvu
默认输出。请注意,列是编号的(第8列是第一列,第122列是最后一列):
% ./av -w 80 testfiles/aln.fasta | head -n 15 # 00000000000000000000000000000000000000000000000000000000000000000000000000000000 # 00000000000000000000000000000000000000000000000000000000000000000000000000000000 # 00111111111122222222223333333333444444444455555555556666666666777777777788888888 # 89012345678901234567890123456789012345678901234567890123456789012345678901234567 59735 agagtttgatcctggctcaggacgaacgcTGGCGGCgtGCTTAACACATGCAAGTCGAACGaTgAAgcggtGCTTgcacc 70875 -------------------------------------------------------------------------------- 58095 agagtttgatcctggctcagagcgaacgcTGGCGGCatGCTTAACACATGCAAGTCGcACGGgtggtttcgGCcatc--- 70854 -----------------------------TGGCGGCagGCcTAACACATGCAAGTCGAgCGGatgAcgggAGCTTgctcc 62024 agagtttgatcctggctcaggacgaacgcTGGCGGCgtGCTTAACACATGCAAGTCGAACGaTgAAgcctttCggggtgg 59895 ---------------------------------------------------AAGTCGAACGGTgAAagagAGCTTagctc 57728 -----------------------------------------------------------tt------------------- 10734 ---------------------------gcTGaCGGCgtGCTTAACACATGCAAGTCGAACGGgatccattAGCgcttttg 71041 --------------------------cgcTGGCGGCagGCTTAACACATGCAAGTCGAACGaTgAAgtctAGCTTgctag 6161O -----------------------------TGGCGGt-gGCcTAACACATGCAAGTCGAACGGatccttcggGaTT-----
输入文件可以通过stdin提供:
% cat testfiles/aln.fasta | av
执行某些选项(显示序号和一致性;显示与第一个序号的差异,限制为第200-280列):
% av testfiles/aln.fasta --number-sequences --consensus --range 200,280 --compare-to 59735 # 000000000000000000000000000000000000000000000000000000000000000000000000000000000 # 222222222222222222222222222222222222222222222222222222222222222222222222222222222 # 000000000011111111112222222222333333333344444444445555555555666666666677777777778 # 012345678901234567890123456789012345678901234567890123456789012345678901234567890 1 ==REF==> 59735 TGGGGtG-TTGGTgGAAAGCgttatgga------------GTGGTTTTAGATGGGCTCACGGCCTATCAGCTTGTTGGTGA 2 70875 gGGt----------GAAAGtGggggaccgcaaggcctc--acGcagcagGAgcGGCcgAtGtCtgATtAGCTaGTTGGTGg 3 58095 gGcc----------cAAAGCcgaAaG--------------GcGccTTTgGAgcGGCctgCGtCCgATtAGgTaGTTGGTGg 4 70854 gGGa----------GAAAGCaggggaccttcgggcctt--GcGcTaTcAGATGaGCctAgGtCggATtAGCTaGTTGGTGg 5 62024 TGGGa-c-ggGGTtaAAAGCtccg----------------GcGGTgaagGATGaGCcCgCGGCCTATCAGCTTGTTGGTGg 6 59895 TcttcaG-caGcTGGAAAGaaTT-----------------tcGGTcaggGATGaGCTCgCGGCCTATCAGCTTGTTGGTGA 7 57728 TcGaG-GaTaGaT-GAAAGgtggcctctacatgtaagctatcacTgaagGAgGGGaTtgCGtCtgATtAGCTaGTTGGaGg 8 10734 TGGGG-t-TgttgGGAAAGgtTTtTt--------------cTGGaTTggGATGGGCTCgCGGCtTATCAGCTTGTTGGTGg 9 71041 gaGa----------GAAAGgGggcTtttagctc-------tcGcTaaTAGATGaGCctAaGtCggATtAGCTaGTTGGTGg 10 6161O gGGG----------GAAAGatTTA----------------tcGccaTTgGAgcGGCcCgCGtCtgATtAGCTaGTTGGTGg 11 CONSENSUS xGGx------x-x-GAAAGxxxxxxx--------------xcGcTxxxgGATGGGCcxgCGtCxgATtAGCTaGTTGGTGg
上面的对齐呈现为彩色HTML(感谢@timholl):
% av testfiles/aln.fasta --number-sequences --consensus --range 200,280 --compare-to 59735 -q --html aln.html
编写单页PDF文件:
% av testfiles/aln.fasta --pdf test.pdf --quiet --blocks-per-page=5
你知道seqmagick吗?如果没有,跑,不要走到 https://github.com/fhcrc/seqmagick看看,这样你就可以 执行以下操作:
% seqmagick convert testfiles/ae_like.sto --output-format=fasta - | av -cx # 000000000000000000000000000000000 # 445555555555566666666666666667777 # 990111111155813445566778888991122 # 791123678914209568907050235891215 GA05AQR01D2ULR ...............TTGGT.GT..AG...A.. GA05AQR01DFGSE ........................T.TAAGT.. GA05AQR01CI0QB ...........A..................... GA05AQR01DW22X .TC..G.T.T....................... GA05AQR01A5WF4 ....................A........-T.. GA05AQR01BUV2U ---.............................. GA05AQR01B1R8I .............T...............CT.. GA05AQR02JASPX ........A........................ GCX02B001AYSTJ .............................-TA. GCX02B001DP9EQ ............A..........CA.......T GCX02B001AFAY1 ..............G.................. GCX02B002J489C ...-......A...................... GLKT0ZE01EDLCP AT...ATT.T....................... GLKT0ZE02I8LRD ---GA............................ -ref-> CONSENSUS TCTAGCGCGCGGGGACGAACGAGGCGCGCTGGA