<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-3621252246367891284</atom:id><lastBuildDate>Sun, 06 Dec 2009 13:16:28 +0000</lastBuildDate><title>Wubin Qu's Blog</title><description>The World of Bioinformatics, Python and Linux!</description><link>http://quwubin.blogspot.com/</link><managingEditor>quwubin@gmail.com (Wubin Qu)</managingEditor><generator>Blogger</generator><openSearch:totalResults>34</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-8013095595661415401</guid><pubDate>Sat, 20 Dec 2008 08:32:00 +0000</pubDate><atom:updated>2009-01-15T16:46:38.662-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Publication</category><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>2008年11月23号，我的论文"MFEprimer: Multiple factor evaluation of the specificity of PCR primers“被Bioinformatics接收，呵呵</title><description>MFEprimer: Multiple factor evaluation of the specificity of PCR primers&lt;br /&gt;&lt;br /&gt;Wubin Qu &lt;sup&gt;1,2&lt;/sup&gt;, Zhiyong Shen &lt;sup&gt;1&lt;/sup&gt;, Dongsheng Zhao &lt;sup&gt;3&lt;/sup&gt;, Yi Yang &lt;sup&gt;2,*&lt;/sup&gt; and Chenggang Zhang &lt;sup&gt;1,*&lt;/sup&gt;&lt;br /&gt;&lt;br /&gt;&lt;sup&gt;1&lt;/sup&gt;Beijing Institute of Radiation Medicine, State Key Laboratory of Proteomics, Beijing 100850, China.&lt;br /&gt;&lt;sup&gt;2&lt;/sup&gt;College of Life Science, Sichuan University, Key Laboratory of Bio-Resources and Eco-Environment of MOE, Chengdu 610064, China.3Beijing Institute of Health Service and Medical Information, Beijing 100850, China.&lt;br /&gt;&lt;br /&gt;*To whom correspondence should be addressed.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Abstract&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Summary:&lt;/strong&gt; We developed a program named MFEprimer for evaluating the specificity of PCR primers based on multiple factors, including sequence similarity, stability at the 3' end of the primer, melting temperature, GC content, and number of binding sites between the primer and DNA templates. MFEprimer can help the user to select more suitable primers before running either standard or multiplex PCR reactions. The cDNA and genomic DNA databases of 10 widely used species, as well as user custom databases, were used as DNA templates for analyzing primers specificity. Furthermore, we maintained a Primer3Plus server with a modified Primer3Manager for one-stop primer design and specificity checking.&lt;br /&gt;&lt;strong&gt;Availability:&lt;/strong&gt; The web service of MFEprimer is freely available at &lt;a href="http://biocompute.bmi.ac.cn/MFEprimer/"&gt;http://biocompute.bmi.ac.cn/MFEprimer/&lt;/a&gt;. A stand-alone version of MFEprimer can be downloaded at &lt;a href="http://biocompute.bmi.ac.cn/MFEprimer/download/"&gt;http://biocompute.bmi.ac.cn/MFEprimer/download/&lt;/a&gt;. Primer3Plus on our server is located at &lt;a href="http://biocompute.bmi.ac.cn/MFEprimer/primer3plus.cgi"&gt;http://biocompute.bmi.ac.cn/MFEprimer/primer3plus.cgi&lt;/a&gt;. All programs are licensed under the General Public License (Free Software Foundation, 1991).&lt;br /&gt;&lt;strong&gt;Contact&lt;/strong&gt;: CZ (&lt;a href="mailto:zhangcg@bmi.ac.cn"&gt;zhangcg@bmi.ac.cn&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Citation:&lt;/strong&gt; &lt;span style="font-weight: bold;"&gt;Wubin Qu&lt;/span&gt;, Zhiyong Shen, Dongsheng Zhao, Yi Yang, and Chenggang Zhang. (2009) MFEprimer: multiple factor evaluation of the specificity of PCR primers, Bioinformatics, 25, 276-278.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-8013095595661415401?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/12/20081123mfeprimer-multiple-factor.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-5590050349463429944</guid><pubDate>Wed, 26 Nov 2008 08:48:00 +0000</pubDate><atom:updated>2008-11-26T00:53:32.948-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>MySQL</category><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>Fedora 8下python程序向mysql数据库传送大文件碰到大小受限的解决办法</title><description>在Fedora 8下用python向数据库传送文件时碰到下面的错误:&lt;br /&gt;_mysql_exceptions.OperationalError: (1153, "Got a packet bigger than 'max_allowed_packet' bytes")&lt;br /&gt;&lt;br /&gt;解决办法:&lt;br /&gt;在mysql的配置文件/etc/my.cnf中添加一行即可：&lt;br /&gt;&lt;pre&gt;[mysqld]&lt;br /&gt;set-variable = max_allowed_packet=4000000&lt;br /&gt;&lt;br /&gt;修改后的my.cnf文件：&lt;br /&gt;&lt;br /&gt;[mysqld]&lt;br /&gt;datadir=/var/lib/mysql&lt;br /&gt;socket=/var/lib/mysql/mysql.sock&lt;br /&gt;user=mysql&lt;br /&gt;# Default to using old password format for compatibility with mysql 3.x&lt;br /&gt;# clients (those using the mysqlclient10 compatibility package).&lt;br /&gt;old_passwords=1&lt;br /&gt;&lt;br /&gt;set-variable = max_allowed_packet=40000000&lt;br /&gt;&lt;br /&gt;[mysqld_safe]&lt;br /&gt;log-error=/var/log/mysqld.log&lt;br /&gt;pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;&lt;br /&gt;参考：&lt;br /&gt;&lt;/pre&gt;&lt;ol&gt;&lt;li&gt;http://blog.chinaunix.net/u/24274/showart_1274689.html&lt;/li&gt;&lt;li&gt;http://www.madirish.net/tech/geocities/jkeane@madirish.net?article=115&lt;/li&gt;&lt;/ol&gt;&lt;pre&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-5590050349463429944?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/11/fedora-8pythonmysql.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-2181881431958258827</guid><pubDate>Fri, 31 Oct 2008 09:58:00 +0000</pubDate><atom:updated>2008-10-31T03:06:06.176-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Software</category><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>文献管理综述</title><description>请看这篇&lt;a href="http://www.ploscompbiol.org/article/info%3Adoi%2F10.1371%2Fjournal.pcbi.1000204"&gt;文章&lt;/a&gt;，发表在PLoS Computational Biology，里面综述了基本上所有的文献管理的软件，包括你听到的以及很多你没听过的。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-2181881431958258827?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/10/blog-post.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-8255233091186497183</guid><pubDate>Thu, 30 Oct 2008 11:41:00 +0000</pubDate><atom:updated>2008-10-30T04:59:54.497-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Python</category><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>从NCBI下载基因序列</title><description>&lt;div style="background: rgb(253, 253, 253) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;u&gt;Python语言&lt;/u&gt;: &lt;a href="http://www.fayaa.com/code/view/459/"&gt;从NCBI下载基因序列&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;     &lt;div style="font-family: &amp;quot;[object HTMLOptionElement]&amp;quot;,&amp;quot;Lucida Console&amp;quot;,&amp;quot;Courier New&amp;quot;,&amp;quot;Bitstream Vera Sans Mono&amp;quot;; background-color: rgb(47, 79, 79);" class="source"&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(218, 112, 214);"&gt;#!/usr/bin/env python&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(218, 112, 214);"&gt;# -*- coding:utf-8 -*-&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;&amp;#39;'&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(127, 255, 212);"&gt;读取文件（每行一个ID）中的GeneID，下载其序列，并保存到文件中&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;&amp;#39;'&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;__file__&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;download_gene.py&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;__date__&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;2008-10-30&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;__version__&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;0.1&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;__author__&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;Wubin Qu &amp;lt;quwubin@gmail.com&amp;gt; @CZlab @BMI @CHINA&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;__blog__&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;http://quwubin.blogspot.com&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;__license__&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;GPL v3 License&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;from&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;Bio&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;import&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;Entrez&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;def&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(255, 255, 255);"&gt;read_id&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;file_name&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;):&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;&amp;#39;'从文件中读取GeneID'''&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;id_array&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;[]&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;fh&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;open&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;file_name&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;,&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;r&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;)&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;lines&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;fh&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;.&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;readlines&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;()&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;for&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;line&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;in&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;lines&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;:&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;id&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;line&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;.&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;strip&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;()&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;id_array&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;.&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;append&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;id&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;)&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;fh&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;.&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;close&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;()&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;id_array&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;,&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;.&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;join&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;id_array&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;)&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;return&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;id_array&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;def&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(255, 255, 255);"&gt;download_seq&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;id_array&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;):&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;&amp;#39;'根据GeneID下载相应格式的序列'''&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;result_handle&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;Entrez&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;.&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;efetch&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;db&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;quot;nucleotide&amp;quot;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;,&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;rettype&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;quot;genbank&amp;quot;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;,&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;id&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;id_array&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;)&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;result&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;result_handle&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;.&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;read&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;()&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;return&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;result&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;def&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(255, 255, 255);"&gt;write_to_file&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;file_out_name&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;,&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;content&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;):&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;&amp;#39;'将序列写入文件中 '''&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;fh&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;open&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;file_out_name&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;,&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;w&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;)&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;fh&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;.&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;write&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;content&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;)&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;fh&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;.&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;close&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;()&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;def&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(255, 255, 255);"&gt;main&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;():&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;&amp;#39;'主控制程序'''&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;file_name&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;id_list.txt&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;file_out_name&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;sequences.txt&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;id_array&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;read_id&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;file_name&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;)&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;result&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;download_seq&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;id_array&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;)&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(248, 16, 176);" class="lineno special"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;write_to_file&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;file_out_name&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;,&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;result&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;)&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(176, 196, 222); font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;__name__&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;==&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt; &lt;/span&gt;&lt;span style="color: rgb(127, 255, 212);"&gt;&amp;#39;__main__&amp;#39;&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;:&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: rgb(218, 112, 214);" class="lineno"&gt;&lt;/span&gt; &lt;span style="color: rgb(245, 222, 179);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;main&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;()&lt;/span&gt;&lt;span style="color: rgb(245, 222, 179);"&gt;&lt;/span&gt;&lt;br&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;注: id_list_txt文件结构如下：&lt;br /&gt;6273291&lt;br /&gt;6273290&lt;br /&gt;6273289&lt;br /&gt;即每行一个GeneID。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-8255233091186497183?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/10/ncbi.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-7579009242902148120</guid><pubDate>Tue, 23 Sep 2008 15:09:00 +0000</pubDate><atom:updated>2008-10-03T00:50:32.370-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Science</category><category domain='http://www.blogger.com/atom/ns#'>Software</category><title>Mendeley: 很有潜力和市场眼光的跨平台文献管理软件</title><description>&lt;div style="text-align: left;"&gt;&lt;a href="http://www.mendeley.com/"&gt;Mendeley&lt;/a&gt; 是一个发展中的文献管理软件，目前处于beta测试阶段，但其发展目标使得这一软件将成为EndNote等软见的有力竞争者，原因有：&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;免费；&lt;/li&gt;&lt;li&gt;跨平台；&lt;/li&gt;&lt;li&gt;桌面版和Web存贮结合；&lt;/li&gt;&lt;li&gt;具有共享功能，具有web2.0的气质；&lt;/li&gt;&lt;li&gt;能自动从pdf文件中提取文献信息（这个功能异常吸引人）；&lt;/li&gt;&lt;li&gt;可以添加tag和comments；&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;还有一些其他功能可能正在添加之中，给我的感觉就是很有眼光，个人比较喜欢，虽然还没有成熟版发布。&lt;br /&gt;桌面版安装在各个平台上都很简单，Web服务需要注册，熟悉CiteUlike等的人会非常喜欢这一功能。&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-7579009242902148120?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/09/mendeley.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-32384410998778202</guid><pubDate>Thu, 18 Sep 2008 14:36:00 +0000</pubDate><atom:updated>2008-09-23T06:05:31.422-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Software</category><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>Taverna工作台（2）</title><description>&lt;div class="entry"&gt;   &lt;p&gt;Taverna工作台是myGrid项目推出的一个可以设计和执行工作流的开源软件，它可以整合包括 NCBI，EBI，DDBJ，SoapLab，BioMOBY和EMBOSS等提供的网络服务和资源，目前已有上百种由世界各地的科学家设计的工作流可供 下载（http://www.myexperiment.org/workflows/all）。将我们需要重复操作的、具有顺序性的一系列工作设计为工 作流，可以节省我们大量的时间以及工作量。典型的一个生物信息学的分析工作就是从NCBI蛋白质RefSeq数据库中获得某一蛋白质的FASTA格式的序 列，再对其做BLAST获取其同源序列，然后对这一序列以及它的同源序列做多序列比对，最后再做系统发育分析；对这一工作已经有工作流 （http://www.myexperiment.org/workflows/124）可供使用，用户只需要输入初始蛋白质的序列接受号或者序列，剩 下的事情就可以交给Taverna来完成。&lt;/p&gt;    &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-32384410998778202?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/09/taverna.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-1098229174069943584</guid><pubDate>Mon, 15 Sep 2008 02:43:00 +0000</pubDate><atom:updated>2008-09-23T06:05:55.226-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Software</category><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>Taverna 工作台(1)</title><description>&lt;p&gt;     The &lt;strong&gt;Taverna workbench&lt;/strong&gt; is a free software tool for     designing and executing workflows, created by the &lt;a href="http://www.mygrid.org.uk/"&gt;&lt;sup&gt;my&lt;/sup&gt;Grid &lt;/a&gt; project, and funded through &lt;a href="http://www.omii.ac.uk/"&gt;OMII-UK&lt;/a&gt;. Taverna allows     users to integrate many different software tools, including      &lt;a href="http://www.mygrid.org.uk/wiki/Mygrid/BiologicalWebServices"&gt;web     services&lt;/a&gt;, such as those provided by      the &lt;a href="http://eutils.ncbi.nlm.nih.gov/entrez/query/static/esoap_help.html"&gt;National Center for     Biotechnology Information&lt;/a&gt;,      &lt;a href="http://www.ebi.ac.uk/Tools/webservices/"&gt;The European     Bioinformatics Institute&lt;/a&gt;,     the &lt;a href="http://xml.ddbj.nig.ac.jp/wsdl/"&gt;DNA Databank of Japan     (DDBJ)&lt;/a&gt;,      &lt;a href="http://www.ebi.ac.uk/Tools/webservices/soaplab/guide"&gt;SoapLab&lt;/a&gt;,      &lt;a href="http://biomoby.org/"&gt;BioMOBY&lt;/a&gt;      and      &lt;a href="http://emboss.sourceforge.net/"&gt;EMBOSS&lt;/a&gt;.&lt;/p&gt;&lt;p&gt; Taverna 工作台是myGrid项目推出的一个设计和执行工作流的开源软件，受&lt;a href="http://www.omii.ac.uk/"&gt;OMII-UK&lt;/a&gt;资助。Taverna可以整合很多的资源和服务，包括NCBI，EBI，DDBJ，SoapLab，BioMOBY和EMBOSS等提供的网络服务，但不限于此。&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-1098229174069943584?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/09/taverna-taverna-workbench.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-4367169773041019904</guid><pubDate>Tue, 29 Jul 2008 15:47:00 +0000</pubDate><atom:updated>2008-07-29T08:48:47.821-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>http://python-resources.blogspot.com/ My another blog</title><description>&lt;a href="http://python-resources.blogspot.com/"&gt;http://python-resources.blogspot.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;A blog for collecting all the Python resources on the web.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-4367169773041019904?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/07/httppython-resourcesblogspotcom-my.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-7844517303165002826</guid><pubDate>Sat, 26 Jul 2008 15:33:00 +0000</pubDate><atom:updated>2008-07-26T08:34:41.557-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>Python 3D Software</title><description>A small collection (73 packages) of pointers to Python software for working in three dimensions&lt;br /&gt;一个收集了70多个Python 3D引擎的网站。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-7844517303165002826?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/07/python-3d-software.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-5812768007605856889</guid><pubDate>Thu, 24 Jul 2008 12:41:00 +0000</pubDate><atom:updated>2008-07-24T05:45:48.222-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Science</category><title>GLPK(GNU Linear Programming Kit) 安装和简单介绍</title><description>在Fedora 8下，yum install glpk 就可以了，非常简单，那&lt;a href="http://www.gnu.org/software/glpk/#introduction"&gt;GLPK&lt;/a&gt;是什么呢？&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;GNU 线性规划工具箱 (GNU Linear Programming Kit). 线性规划是一类常见的规划问题, 国内普遍使用的是Lindo 和 Matlab 优化工具箱, 但这两个软件都是商业软件. GLPK 是 GNU 的线性规划软件解决方案, 他快速通用, 不仅可处理 LP, MPS, 等标准 LP 问题描述格式文件, 而且还支持功能更强大的 GNU MathProg 建模语言.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-5812768007605856889?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/07/glpkgnu-linear-programming-kit.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-84874733958112110</guid><pubDate>Fri, 02 May 2008 06:27:00 +0000</pubDate><atom:updated>2008-05-01T23:28:12.742-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>Python中使用rstrip()去掉行尾空白</title><description>Python中使用rstrip()去掉行尾空白&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-84874733958112110?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/05/pythonrstrip.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-3792043060062526964</guid><pubDate>Fri, 02 May 2008 02:59:00 +0000</pubDate><atom:updated>2008-12-10T06:40:45.400-08:00</atom:updated><title>Homolog, ortholog和paralog</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_U0pRL035B-8/SBqFAzU_RVI/AAAAAAAAACM/ETUV4sTeLJw/s1600-h/orthologs3.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_U0pRL035B-8/SBqFAzU_RVI/AAAAAAAAACM/ETUV4sTeLJw/s320/orthologs3.gif" alt="" id="BLOGGER_PHOTO_ID_5195611368950023506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;来自：http://www.ncbi.nlm.nih.gov/Education/BLASTinfo/Orthology.html&lt;/p&gt;&lt;p&gt;&lt;b&gt;Homologous sequences.&lt;/b&gt; Orthologs and Paralogs are two types of homologous sequences. Orthology describes genes in different species that derive from a common ancestor. Orthologous genes may or may not have the same function. Paralogy describes homologous genes within a single species that diverged by gene duplication.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;来自：http://en.wikipedia.org/wiki/Homology_(biology)&lt;br /&gt;&lt;h2&gt;&lt;span class="mw-headline"&gt;Homology of sequences in genetics&lt;/span&gt;&lt;/h2&gt; &lt;p&gt;Homology among proteins and DNA is often concluded on the basis of sequence similarity, especially in &lt;a href="http://en.wikipedia.org/wiki/Bioinformatics" title="Bioinformatics"&gt;bioinformatics&lt;/a&gt;. For example, in general, if two or more genes have highly similar DNA sequences, it is likely that they are homologous. But sequence similarity may arise from different ancestors: short sequences may be similar by chance, and sequences may be similar because both were selected to bind to a particular protein, such as a &lt;a href="http://en.wikipedia.org/wiki/Transcription_%28genetics%29" title="Transcription (genetics)"&gt;transcription&lt;/a&gt; factor. Such sequences are similar but not homologous. Sequence regions that are homologous are also called &lt;b&gt;&lt;a href="http://en.wikipedia.org/wiki/Conserved_region" title="Conserved region"&gt;conserved&lt;/a&gt;&lt;/b&gt;. This is not to be confused with conservation in amino acid sequences in which the amino acid at a specific position has changed but the physio-chemical properties of the amino acid remain unchanged.&lt;/p&gt; &lt;p&gt;The phrase "percent homology" is sometimes used but is incorrect. "Percent identity" or "percent similarity" should be used to quantify the similarity between the biomolecule sequences. For two naturally occurring sequences, percent identity is a factual measurement, whereas homology is a hypothesis supported by evidence. One can, however, refer to partial homology where a fraction of the sequences compared (are presumed to) share descent, while the rest does not. For example, partial homology may result from a &lt;a href="http://en.wikipedia.org/wiki/Gene_fusion" class="mw-redirect" title="Gene fusion"&gt;gene fusion&lt;/a&gt; event.&lt;/p&gt; &lt;p&gt;Many algorithms exist to cluster protein sequences into sequence families, which are sets of mutually homologous sequences. (See &lt;a href="http://en.wikipedia.org/wiki/Sequence_clustering" title="Sequence clustering"&gt;sequence clustering&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Sequence_alignment" title="Sequence alignment"&gt;sequence alignment&lt;/a&gt;.)&lt;/p&gt; &lt;p&gt;Homologous sequences are of two types: orthologous and paralogous. &lt;a href="http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?db=pubmed&amp;amp;cmd=Retrieve&amp;amp;dopt=AbstractPlus&amp;amp;list_uids=16285863&amp;amp;query_hl=2&amp;amp;itool=pubmed_DocSum" class="external autonumber" title="http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?db=pubmed&amp;amp;cmd=Retrieve&amp;amp;dopt=AbstractPlus&amp;amp;list_uids=16285863&amp;amp;query_hl=2&amp;amp;itool=pubmed_DocSum" rel="nofollow"&gt;[2]&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a name="Orthology" id="Orthology"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Orthology&lt;/span&gt;&lt;/h3&gt; &lt;p&gt;Homologous sequences are &lt;b&gt;orthologous&lt;/b&gt; if they were separated by a &lt;a href="http://en.wikipedia.org/wiki/Speciation" title="Speciation"&gt;speciation&lt;/a&gt; event: when a species diverges into two separate species, the divergent copies of a single gene in the resulting species are said to be orthologous. &lt;b&gt;Orthologs&lt;/b&gt;, or orthologous genes, are genes in different species that are similar to each other because they originated from a common ancestor. The term "ortholog" was coined in 1970.&lt;/p&gt; &lt;p&gt;The strongest evidence that two similar genes are orthologous is the result of a phylogenetic analysis of the gene lineage. Genes that are found within one &lt;a href="http://en.wikipedia.org/wiki/Clade" title="Clade"&gt;clade&lt;/a&gt; are orthologs, descended from a common ancestor. Orthologs often, but not always, have the same function.&lt;/p&gt; &lt;p&gt;Orthologous sequences provide useful information in taxonomic classification studies of organisms. The pattern of genetic divergence can be used to trace the relatedness of organisms. Two organisms that are very closely related are likely to display very similar DNA sequences between two orthologs. Conversely, an organism that is further removed evolutionarily from another organism is likely to display a greater divergence in the sequence of the orthologs being studied.&lt;/p&gt; &lt;p&gt;&lt;a name="Paralogy" id="Paralogy"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Paralogy&lt;/span&gt;&lt;/h3&gt; &lt;p&gt;Homologous sequences are &lt;b&gt;paralogous&lt;/b&gt; if they were separated by a &lt;a href="http://en.wikipedia.org/wiki/Gene_duplication" title="Gene duplication"&gt;gene duplication&lt;/a&gt; event: if a gene in an organism is duplicated to occupy two different positions in the same genome, then the two copies are paralogous.&lt;/p&gt; &lt;p&gt;A set of sequences that are paralogous are called &lt;b&gt;paralogs&lt;/b&gt; of each other. Paralogs typically have the same or similar function, but sometimes do not: due to lack of the original selective pressure upon one copy of the duplicated gene, this copy is free to mutate and acquire new functions.&lt;/p&gt; &lt;p&gt;Paralogous sequences provide useful insight to the way genomes &lt;a href="http://en.wikipedia.org/wiki/Evolution" title="Evolution"&gt;evolve&lt;/a&gt;. The genes &lt;a href="http://en.wikipedia.org/wiki/Translation_%28genetics%29" class="mw-redirect" title="Translation (genetics)"&gt;encoding&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/Myoglobin" title="Myoglobin"&gt;myoglobin&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Hemoglobin" title="Hemoglobin"&gt;hemoglobin&lt;/a&gt; are considered to be ancient paralogs. Similarly, the four known classes of hemoglobins (&lt;a href="http://en.wikipedia.org/wiki/Hemoglobin_A" class="mw-redirect" title="Hemoglobin A"&gt;hemoglobin A&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Hemoglobin_A2" title="Hemoglobin A2"&gt;hemoglobin A2&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/w/index.php?title=Hemoglobin_S&amp;amp;action=edit&amp;amp;redlink=1" class="new" title="Hemoglobin S (page does not exist)"&gt;hemoglobin S&lt;/a&gt;, and &lt;a href="http://en.wikipedia.org/wiki/Fetal_hemoglobin" title="Fetal hemoglobin"&gt;hemoglobin F&lt;/a&gt;) are paralogs of each other. While each of these genes serves the same basic function of oxygen transport, they have already diverged slightly in function: fetal hemoglobin (hemoglobin F) has a higher affinity for oxygen than adult hemoglobin.&lt;/p&gt; &lt;p&gt;Another example can be found in rodents such as rats and mice. Rodents have a pair of paralogous &lt;a href="http://en.wikipedia.org/wiki/Insulin" title="Insulin"&gt;insulin&lt;/a&gt; genes, although it is unclear if any divergence in function has occurred.&lt;/p&gt; &lt;p&gt;Paralogous genes often belong to the same species, but this is not necessary: for example, the hemoglobin gene of humans and the myoglobin gene of chimpanzees are paralogs. This is a common problem in bioinformatics: when genomes of different species have been sequenced and homologous genes have been found, one can not immediately conclude that these genes have the same or similar function, as they could be paralogs whose function has diverged.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-3792043060062526964?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/05/homolog-orthologparalog.html</link><author>quwubin@gmail.com (Wubin Qu)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_U0pRL035B-8/SBqFAzU_RVI/AAAAAAAAACM/ETUV4sTeLJw/s72-c/orthologs3.gif' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-979731333027246026</guid><pubDate>Sun, 27 Apr 2008 06:23:00 +0000</pubDate><atom:updated>2008-05-02T19:19:00.016-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>English</category><title>生物学中难懂词汇</title><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;dinucleotide&lt;/span&gt;： 二核苷酸 · 二双核苷酸.&lt;br /&gt;&lt;span id="lblresult"&gt;interactome：&lt;/span&gt;&lt;span id="lblresult"&gt;蛋白质相互作用组&lt;/span&gt;&lt;br /&gt;&lt;span class="__mozilla-findbar-search" style="padding: 0pt; background-color: yellow; color: black; display: inline; font-size: inherit;"&gt;Interlogs：&lt;/span&gt; are interacting proteins from one species whose orthologous proteins from another species also interact.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-979731333027246026?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/dinucleotide.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-3529981097664073626</guid><pubDate>Sat, 26 Apr 2008 00:57:00 +0000</pubDate><atom:updated>2008-04-25T18:04:04.543-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>生物信息学在中国的发展</title><description>今天在Plos Computational Biology上发表了北大魏丽萍老师的一篇介绍中国生物信息学发展的文章，可以在这个链接上下载全文（&lt;a href="http://www.ploscompbiol.org/article/info%3Adoi%2F10.1371%2Fjournal.pcbi.1000020"&gt;http://www.ploscompbiol.org/article/info%3Adoi%2F10.1371%2Fjournal.pcbi.1000020&lt;/a&gt;），免费的。&lt;br /&gt;&lt;br /&gt;文章回顾了生物信息学在中国的发展历程，从PubMed上的论文数量，从研究的具体领域，从培养生物信息学的机构/大学等做了很详细的介绍，对我们了解国内生物信息学的历史以及发展动向有很好的帮助。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-3529981097664073626?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/blog-post_25.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-8438210521798819038</guid><pubDate>Thu, 24 Apr 2008 05:32:00 +0000</pubDate><atom:updated>2008-04-23T22:32:01.931-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Software</category><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>[转] How to improve scientific software?</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;原文地址：http://feeds.feedburner.com/~r/Blindscientist/~3/276532490/&lt;br/&gt;作者：&lt;span class='entry-author-name'&gt;Paulo Nuin&lt;br/&gt;&lt;br/&gt;作者提到的问题正是我学习这么久以来发现的问题，除了少数比较杰出的软件之外，大部分的生物信息学软件只有一个版本，根本没有后面的升级版本，这个版本就是发表文章时的那个版本，也就是说，发完了文章，就算结束了，用户使用过程中遇到的问题跟他没有关系了，这是典型的不负责任的态度，这样的软件太多了，Bioinformatics Application Note里面发表的软件里面，大部分都是这样的。&lt;br/&gt;&lt;/span&gt;&lt;p&gt;Do you know the answer to the above question? No? Me neither, but I&lt;br /&gt;can offer some suggestions. On a daily basis, a bioinformatician is&lt;br /&gt;exposed to hundreds of applications, computer languages, websites, you&lt;br /&gt;name it. Some of them are commercial, some of them free and open&lt;br /&gt;source. Some of the academia-developed software are open-source, some&lt;br /&gt;of them are not. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;A good portion of the academia-developed software are published in scientific journals, as an 2-page application note in &lt;a href='http://bioinformatics.oxfordjournals.org/' target='_blank'&gt;Bioinformatics &lt;/a&gt;, or on a longer paper on &lt;a href='http://www.biomedcentral.com/bmcbioinformatics/' target='_blank'&gt;BMC Bioinformatics&lt;/a&gt;, just to name two of the journals of the field. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;I cannot complain of non-published applications. Usually they are&lt;br /&gt;free, open, and were developed during someone’s spare time. I have the&lt;br /&gt;option of not using them, or modify them or helping the developer to&lt;br /&gt;improve it. I cannot complain of lack of documentation, bugs, minor&lt;br /&gt;errors or even the lack of an interface.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;On the other hand, I can complain about published applications.&lt;br /&gt;Usually they are also free, but not always open and they were developed&lt;br /&gt;with a publication in mind, or at least as a mean towards a&lt;br /&gt;publication. It should have proper documentation, be slightly portable&lt;br /&gt;(yes, that’s important, so if you are developing your next&lt;br /&gt;groundbreaking phylogenetic tool in &lt;a rel='homepage' title='Objective Caml' href='http://caml.inria.fr/' target='_blank'&gt;OCaml&lt;/a&gt;,&lt;br /&gt;distribute the executable, don’t ask me to “compile” or install OCaml)&lt;br /&gt;and be easy or moderately easy to use. I give a break for the lack of&lt;br /&gt;interface.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;And, why should I expect such things from a published application?&lt;br /&gt;Because, apart from the developers, at least one editor and two&lt;br /&gt;reviewers have (supposedly) tested (or glanced over) the application.&lt;br /&gt;Usually, scientific journals ask the authors to provide a copy of the&lt;br /&gt;package that is being submitted to publication. Basically one should&lt;br /&gt;include everything that is going to be installed, compiled, etc. So, a&lt;br /&gt;simple manual or readme, installation instructions, source code,&lt;br /&gt;executable(s), you name it, should be in the package.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;I can say, from personal experience, that the majority of the&lt;br /&gt;published applications will have most of the items required for a&lt;br /&gt;user-friendly experience. But many fail in at least one of these&lt;br /&gt;aspects:&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt; poor (or nonexistent) documentation&lt;/li&gt;&lt;li&gt; errors and bugs, too evident to be missed by the reviewers/editor&lt;/li&gt;&lt;li&gt; far from being user-friendly, even the command-line ones&lt;/li&gt;&lt;li&gt; non-portable (even between &lt;a rel='wikipedia' title='Linux' href='http://en.wikipedia.org/wiki/Linux' target='_blank'&gt;Linux&lt;/a&gt; distros)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;This makes me ask myself: Are the editors/reviewers testing,&lt;br /&gt;checking, using these applications at all, before accepting the&lt;br /&gt;manuscript? I guess not, or it seems that they are not. Some errors you&lt;br /&gt;see in some applications are easy fix, and wouldn’t harm the program’s&lt;br /&gt;merit, but in the end would greatly improve user satisfaction and&lt;br /&gt;require less email exchanges with developers/scientists regarding bugs&lt;br /&gt;and errors. After all, you already published it, nobody told you that&lt;br /&gt;you have to support it, right?&lt;/p&gt;&lt;br /&gt;&lt;p&gt;This brings us to the original question: how to improve scientific software? Simple … no, not really. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Far from having the ideal solution, I will add my two cents:&lt;/p&gt;&lt;br /&gt;&lt;p&gt;1- Journals can to create a more rigorous publication process for&lt;br /&gt;applications, what would include more testing from the&lt;br /&gt;editor/reviewers. That would make the review process slower, will make&lt;br /&gt;editors and reviewers to spend time, that they already have in short&lt;br /&gt;supply, on a job that they are not compensated for. Everybody will be&lt;br /&gt;unhappy and the process fails. So, if journals are willing to publish&lt;br /&gt;application only manuscripts, why not have an in house testing&lt;br /&gt;facility, at least to check for basic things that the authors claim&lt;br /&gt;their software should do? Too expensive for the journals? Maybe, maybe&lt;br /&gt;not.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;2- Publication of applications &lt;em&gt;per se&lt;/em&gt; should be abolished.&lt;br /&gt;If you want to release an application and publish it, be sure you prove&lt;br /&gt;the merits of it with a publication that includes the software, its&lt;br /&gt;application and results that are scientifically relevant. This way we&lt;br /&gt;also abolish the publication-of-the-main-project, along with the paper&lt;br /&gt;on the application-that-was-used-to-generate-the-results and the paper&lt;br /&gt;about the&lt;br /&gt;program-that-was-used-to-display-the-results-generated-by-the-other-application.&lt;br /&gt;This way we would also foster collaboration between pure&lt;br /&gt;bioinformatics/application development groups with wet-lab groups.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;3- Create a centralized scientific software repository, something&lt;br /&gt;like Sourceforge, and let people contribute, collaborate, code and&lt;br /&gt;develop and when the application is mature enough, publish it and give&lt;br /&gt;credit to everyone that had some input. Depending on the quality and&lt;br /&gt;amount of time dedicated to a project, the person would be a co-author&lt;br /&gt;or cited in the acknowledgments. This would also increase&lt;br /&gt;collaboration, people interested can learn and teach, exchange ideas&lt;br /&gt;and develop good application development standards, different computer&lt;br /&gt;languages, etc. Maybe you might not even need to publish the software&lt;br /&gt;in a journal, the user input and evaluations would be enough to&lt;br /&gt;solidify a good developer/scientist CV.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;All options above are not mutually exclusive, they can be&lt;br /&gt;implemented at the same time, or they can’t be implemented at all.&lt;br /&gt;Would Open Science benefit from this? I bet so.&lt;br /&gt;&lt;/p&gt;&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-8438210521798819038?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/how-to-improve-scientific-software.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-6926981360081825898</guid><pubDate>Thu, 24 Apr 2008 05:23:00 +0000</pubDate><atom:updated>2008-04-23T22:23:13.636-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>English</category><title>Per se means in Wikipedia</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;dl&gt;&lt;dd&gt;&lt;span class='boilerplate seealso'&gt;&lt;i&gt;See also: &lt;a title='Perse' href='http://en.wikipedia.org/wiki/Perse'&gt;Perse&lt;/a&gt;&lt;/i&gt;&lt;/span&gt;&lt;/dd&gt;&lt;/dl&gt;&lt;p&gt;&lt;b&gt;per se&lt;/b&gt; (sometimes misspelled "per say" or "persay") is:&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A &lt;a title='List of Latin phrases (P–Z)' href='http://en.wikipedia.org/wiki/List_of_Latin_phrases_%28P%E2%80%93Z%29#P'&gt;Latin phrase&lt;/a&gt; used in English arguments for "by itself"&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;It also is used in law:&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a title='Illegal per se' href='http://en.wikipedia.org/wiki/Illegal_per_se'&gt;Illegal per se&lt;/a&gt;, the legal usage of 'per se' in criminal and anti-trust law&lt;/li&gt;&lt;li&gt;&lt;a title='Negligence per se' href='http://en.wikipedia.org/wiki/Negligence_per_se'&gt;Negligence per se&lt;/a&gt;, legal use in tort law&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-6926981360081825898?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/per-se-means-in-wikipedia.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-3803040595981076834</guid><pubDate>Mon, 21 Apr 2008 13:18:00 +0000</pubDate><atom:updated>2008-04-21T06:33:24.277-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Linux</category><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>使用muscle来作蛋白质／核酸多序列比对</title><description>做多序列比对，比较常用的是CLUSTALW和T-coffee，这里还有一个叫做muscle（multiple         sequence comparison by log-expectation）的多序列比对软件，它的平均精度和速度要超过CLUSTALW和T-coffee，具体的算法和用法请参阅其主页（http://www.drive5.com/muscle/index.htm）上的文档，下面简单介绍一下它的安装和简单用法：&lt;br /&gt;&lt;br /&gt;安装：&lt;br /&gt;下载源码：http://www.drive5.com/muscle/downloads3.7/muscle3.7_src.tar.gz&lt;br /&gt;解压：tar xvf muscle3.7_src.tar.gz&lt;br /&gt;命令行下：make 回车&lt;br /&gt;将生成一个muscle的可执行文件，这就是muscle，将他放在/usr/bin或者/usr/local/bin等文件夹里面，或做成软连接都可以。&lt;br /&gt;&lt;br /&gt;使用：&lt;br /&gt;muscle -in seqs.fa -out seqs.afa&lt;br /&gt;更常用的是：&lt;br /&gt;muscle -in seqs.fa -clwout seqs.aln&lt;br /&gt;这将生成与CLUSTALW一样的结果文件。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-3803040595981076834?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/muscle.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-8824348920858753325</guid><pubDate>Mon, 21 Apr 2008 09:52:00 +0000</pubDate><atom:updated>2008-04-21T03:03:23.897-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Others</category><title>Linux下整理文件与目录</title><description>实在忍受不了文件夹的乱了，自己放的东西经常找不到，写的脚本等常常忘了放在哪了，今天，效仿系统中的目录比如/bin, /doc, /tmp等对自己的文件进行了分类管理，效果相当不错。&lt;br /&gt;对自己的每一个项目建立一个独立的文件夹，在这个文件夹里面，/bin放置执行文件，/lib或者/src放置程序，/doc放置文档等，/tmp放置临时产生的文件等，这样一来，思路整个很通畅了，找什么文件到什么文件夹一目了然。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-8824348920858753325?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/linux.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-240822522707357182</guid><pubDate>Mon, 21 Apr 2008 09:50:00 +0000</pubDate><atom:updated>2008-04-21T02:51:24.622-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Others</category><title>让你的个人效率翻三倍</title><description>&lt;div&gt;原文地址：&lt;a href="http://www.stevepavlina.com/articles/triple-your-personal-productivity.htm"&gt;http://www.stevepavlina.com/articles/triple-your-personal-productivity.htm&lt;/a&gt;&lt;/div&gt; &lt;div&gt;译文地址：&lt;a href="http://blog.sina.com.cn/u/5934276b010008xi" target="_blank" closure_hashcode_="2132"&gt;&lt;span style="color:#0000ff;"&gt;让你的个人效率翻三倍&lt;/span&gt;&lt;/a&gt;(&lt;a href="http://blog.sina.com.cn/s/blog_5934276b010008xi.html"&gt;http://blog.sina.com.cn/s/blog_5934276b010008xi.html&lt;/a&gt;)&lt;br /&gt;翻译：&lt;a href="http://blog.sina.com.cn/nicolelee" target="_blank" closure_hashcode_="2133"&gt;&lt;span style="color:#0000ff;"&gt;Nicole Lee&lt;/span&gt;&lt;/a&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;p&gt;你是否曾有过这种感觉：当你回顾自己度过的一周时感到消沉，因为你未能完成自身所期望的那么多工作。当你在打造一个成功的职业生涯或你自己的事业 时，时间或许是你最宝贵的财富，如何支配你的时间直接决定了你的收入。你无法购买自身拥有之外的时间，而时钟却永不停息地滴答作响。&lt;/p&gt; &lt;p&gt;几年前，我发现了一个能让我把效率提高近三倍的简单方法，在本文中我将分享一些你可以马上着手进行的非常实用的观念，并且你不必为之付出比现在更多的努力。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;使用一个详细的日程表&lt;/strong&gt;&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;更好地管理你的时间的首要任务是找出你现在支配时间的方式。使用一个日程表是完成此步骤最有效的方法。仅需尝试一天，你会立即对你的时间到底去了哪里有了不可思议的洞察。该测量的举动通常足以把你的无意识习惯提升到意识层面，如此你才有机会仔细检视并改变它们。&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;此处是使用日程表的方法。一整天当你开始或完成某个活动时都把时间纪录下来，可考虑使用秒 表来记录每个活动的时间间隔。你可以仅在工作时间使用这个方法，或是一整天都用。一天结束时，把这些时间段分类记录到综合类别中，然后找出你在每类活动中 耗费时间的百分比。假如想把这事做彻底，可以持续做上一周，再计算你在每类活动中耗费的时间占总时间的百分比。要尽可能地详尽：记下你在收发电子邮件、阅 读新闻组、网上冲浪、打电话、就餐、洗澡等等事情上分别花费了多少时间。当你从椅子上站起来的时候，可能就表示你该在日程表里添上一笔了。我通常每天结束 时会有50—100个日程记录。&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;你可能会惊讶地发现，你花在那些自认为是实质性工作的活动上只占了工作总时间的一小部分。 有研究发现上班族每天在实质性工作上平均花费的时间为1.5小时。其余时间都耗在了社交、工间休息、就餐、与工作无关的交流、把文件挪来挪去，及其它许多 与工作无关的事情上。全职上班族平均开始工作的时间是上午11点，而下午3点半左右就开始懈怠了。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;分析你的结果&lt;/strong&gt;&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;我第一次使用日程表时，我一周在办公室花费了约60个小时，却只完成了15个小时的实质性 工作。即使在技术上看来我的效率已是上班族均值的两倍，我仍为这个结果懊恼。另外45小时到哪去了？我的日程表清楚地显示出时间在我无意识的状态中流失 ——过分频繁地检查邮件、在那些实际上没有必要的事情上苛求完美、通读新闻、就餐时间过长、被其实可预防的干扰打断等等。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;计算你的个人效率比&lt;/strong&gt;&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;当我察觉自己在办公室里耗了60个小时，却只完成了15个小时的实质性工作时，我开始自问 一些有趣的问题。我的收入和成就感仅仅来自那15个小时，而不是我在办公室耗费的所有时间。因此我决定开始记录我的每日效率比，也即我在实质性工作上耗费 的时间除以我在办公室耗费的总时间。当我发现自己仅利用了25％的时间时这确实令我感觉糟透了。我同时认识到，仅仅延长工作时间是极其愚蠢的。&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;效率比＝实际工作时间/总的“工作时间”&lt;/p&gt; &lt;p&gt;&lt;strong&gt;用减少总时间推动效率提升&lt;/strong&gt;&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;假如你曾经尝试过约束自己去做那些你并不真正有动力去做的事情，你失败的机率很大。这是当 我试着约束自己去更努力地工作时的自然而然的结果。事实上，试图更努力只会降低我的动力并让我的“效率比”更低。因此我很不情愿地决定尝试相反的方法。第 二天我只允许自己在办公室待上5个小时，而那天剩下的时间我不准自己再工作。哈，有趣的事情发生了，我肯定你能想象得到。我的大脑把工作时间当成了稀罕 物，因为我持续工作了几乎整整5个小时且效率比超过了90％。我在一周接下来的几天里继续这个实验，于是这周在办公室度过的30个小时当中，我完成了25 小时的工作，效率比超过80％。因此我在把每周工作时间减少到30小时的同时还多出了10小时来做实质性工作。假如你的日程表显示你的效率比十分低下，那 就试着在一天中严格限制你的工作总时间，看看成果如何。一旦你的大脑认识到工作时间很紧迫，你突然间就会变得极有效率，因为你必须如此。当你有紧迫的时间 限制时，你通常总能找出完成工作的办法。而当你有充裕时间时，很容易就变得效率低下。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;保持最高效率的同时逐渐增加工作总时间&lt;/strong&gt;&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;在几周的时间里，我能在保持自己的效率超过80％的同时逐渐增加我的每周工作时间。迄今为 止我保持这个习惯已有多年，一般每周约有40小时用来干实质性工作，同时只需在办公室待上45小时。我觉得这对我来说太棒了。假如我试图在办公室待上更长 时间，我的生产率就会飞速下降。最妙的是这个方法能让我在最优化自己的工作效率的同时，也让我在生活的其它领域得到极大的平衡。我使用这个方法使事业成效 提升了三倍，并且仍有大量时间来追求个人爱好。&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;使用日程表是确保生产率最佳而不必增加工作时间的明智选择。不过，日程表必须定期使用，才 能产生这些优势。我每3—6个月用一次日程表，多年来它让我有了巨大的改变，总是让我有新的杰出表现。假如太长时间不用日程表，我的生产率就会逐渐下降 ——因为我又恢复了那些无意识的浪费时间的习惯。你将如我一样，发觉你对生产率的感受与你完成了多少实质性工作密切相关。当你感到自己的生产率低于想达到 的目标，就利用日程表来提升你的意识和测量你的“效率比”，而后优化你的效率，直至生产率恢复如初。&lt;/p&gt; &lt;p style="margin-left: 30px;"&gt;记录日程是一种高效且无需什么努力就能做到的方法，而它的长期回报是惊人的。&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-240822522707357182?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/blog-post_21.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-3478359110171969079</guid><pubDate>Fri, 11 Apr 2008 08:18:00 +0000</pubDate><atom:updated>2008-04-11T01:18:22.615-07:00</atom:updated><title>什么是MOBY/BioMOBY？</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;MOBY-S系统定义了一个基于语义（ontology）的信息标准，使程序可以在生物学数据仓库和数据分析中心之间自由的交换数据，避免了人工处理不同数据中的数据格式问题。网址：http://www.biomoby.org/。&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-3478359110171969079?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/mobybiomoby.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-4111529906646200437</guid><pubDate>Fri, 11 Apr 2008 07:59:00 +0000</pubDate><atom:updated>2008-04-11T01:19:54.777-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>BioMart——一个查询导向的数据管理系统</title><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;    BioMart由欧洲生物信息研究所（EBI）和冷泉港实验室（ESHL）共同开发的一套查询导向的数据管理系统，这个系统可以接受任意格式的数据，也可以按照不同的需求安装不同的查询工具和界面，可谓相当灵活。由于其内部采用关系型的数据组织模式，所以更易于进行复杂的数据挖掘研究。&lt;br /&gt; BioMart内建有针对处理大量数据的最佳化查询功能，以便处理基因组序列或是微阵列实验数据等。对于分布于网络的多个数据集的交叉查询，BioMart使之成为可能，从而避免了将这些数据全都下载到本地然后再进行整合查询的麻烦。可以通过网络、图表或者使用Perl、JAVA等语言写的程序来访问BioMart的数据。目前，BioMart支持关系型数据平台MySQL，Oracle以及Postgres。&lt;br /&gt; 另外，BioMart是开源的，遵守LGPL协议。&lt;br /&gt;网址：http://www.biomart.org/&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-4111529906646200437?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/biomart.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-1977493290341932077</guid><pubDate>Wed, 09 Apr 2008 14:05:00 +0000</pubDate><atom:updated>2008-04-09T07:05:18.900-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>您了解Taverna工作流吗？ </title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;您好！&lt;br/&gt;    Taverna工作流近两年在生物信息学界刚刚兴起，由EBI等多家欧洲单位联合推出，旨在整合风格各异的web&lt;br /&gt;services资源，用工作流的方式为生物学家提供非常简便的生物信息学服务。这是它的网址是&lt;br /&gt;http://taverna.sourceforge.net/，一个开源的工程，我对此非常感兴趣，不知道阁下是否也很感兴趣？期待与您的交流。（联系：屈武斌 quwubin AT gmail.com）&lt;br/&gt;&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-1977493290341932077?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/taverna.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-3856980824942437385</guid><pubDate>Tue, 08 Apr 2008 15:19:00 +0000</pubDate><atom:updated>2008-04-08T08:19:24.940-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>使用Firefox插件BioBar来让你的科研更顺利</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;h3&gt;Biobar - A toolbar for browsing biological data and&lt;br /&gt;databases.&lt;/h3&gt;&lt;br/&gt;http://biobar.mozdev.org/&lt;br/&gt;&lt;br/&gt;这是非常有用的火狐插件，专为生物科学工作者而设计的！&lt;br/&gt;里面包括了常用的生物信息学的网站，比如NCBI，EBI，DDBJ等。&lt;br/&gt;你可以将PubMed设成你的默认数据库，这样就拥有了一个PubMed&lt;br/&gt;的ToolBar，查找文献非常方便。是所有生物科学工作者必备的&lt;br/&gt;火狐插件，强烈推荐！&lt;br/&gt;&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-3856980824942437385?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/firefoxbiobar.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-8110991804792491789</guid><pubDate>Sun, 06 Apr 2008 14:02:00 +0000</pubDate><atom:updated>2008-04-06T07:02:08.019-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Bioinformatics</category><title>使用Python/BioPython在PubMed上查文献</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;from Bio import PubMed&lt;br/&gt;from Bio import Medline&lt;br/&gt;&lt;br/&gt;search_term = ’blat’&lt;br/&gt;ids = PubMed.search_for(search_term)&lt;br/&gt;parser = Medline.RecordParser()&lt;br/&gt;mdict = PubMed.Dictionary(parser = parser)&lt;br/&gt;article = mdict[ ids[0] ]&lt;br/&gt;print article.title&lt;br/&gt;print article.authors&lt;br/&gt;&lt;br/&gt;运行程序，得到结果：&lt;br/&gt;Analytical and mineralogical studies of ore and impurities from a chromite&lt;br/&gt;mineral using X-ray analysis, electrochemical and microscopy techniques.&lt;br/&gt;['Sanchez-Ramos S', 'Domenech-Carbo A', 'Gimeno-Adelantado JV', 'Peris-Vicente J']&lt;br/&gt;&lt;br/&gt;注意：作者是一个列表。&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-8110991804792491789?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/pythonbiopythonpubmed.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3621252246367891284.post-6545428995548783644</guid><pubDate>Thu, 03 Apr 2008 06:56:00 +0000</pubDate><atom:updated>2008-04-02T23:58:53.622-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>MySQL</category><title>MySQL常用命令</title><description>导入SQL脚本：&lt;br /&gt;mysql&gt; source huex_1_0_st_transcript_annot.sql&lt;br /&gt;&lt;br /&gt;导入本地文件：&lt;br /&gt;mysql&gt; load data local infile  "/home/quwubin/probeset.csv" into table huex fields terminated by ',';&lt;br /&gt;&lt;br /&gt;mysql&gt; load data local infile "/home/quwb/data/probeset/MoEx-1_0-st-v1.na25.mm9.probeset.csv" into table probeset fields terminated by ',' enclosed by '"'&lt;br /&gt;&lt;br /&gt;修改表名：&lt;br /&gt;mysql&gt; alter table huex rename as huex_1_0_st_transcript_annot&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3621252246367891284-6545428995548783644?l=quwubin.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://quwubin.blogspot.com/2008/04/mysql.html</link><author>quwubin@gmail.com (Wubin Qu)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item></channel></rss>