4月 26

计算单机版Blat的“percent identity“的Perl代码

单机版Blat的匹配结果中没有percent identity(网络版的Blat输出结果中有)。为了筛选输出结果,常常需要计算每个匹配的percent identity;UCSC的Blat—FAQ中虽然给出了相应的解决办法(http://genome.ucsc.edu/FAQ/FAQblat#blat4),但其代码是用C写的,不利于使用Perl的生物信息学工作人员调用。此处给出相应的perl代码,如下所示(非原创,版权归原作者所有):
Continue reading

4月 18

在Windows中高效处理文本数据

  1. GNU utilities for Win32

  2. Here are some ports of common GNU utilities to native Win32. In this context, native means the executables do only depend on the Microsoft C-runtime (msvcrt.dll) and not an emulation layer like that provided by Cygwin tools.
    主页
    下载

  3. CoreUtils for Windows

  4. The GNU Core Utilities are the basic file, shell and text manipulation utilities of the GNU operating system. These are the core utilities which are expected to exist on every operating system.
    主页
    下载:EXEBIN

  5. Time For Science中的部分PELR2EXE

  6. Continue reading

4月 14

【转载】编程与女人(四则)

之一

程序员就像男人,语言就像女人,每个男人都想要很多女人,却很少有男人能真正了解一个女人。

之二

男人都像Python,总喜欢更美的(Beautiful is better than ugly);
又想遇到像Perl一样的女人,因为有多种方式可以用(There is more than one way to do it)。
Continue reading

4月 01

Benford law(本福特定律)

  1. 定义

  2. 本福特定律,也称为本福德法则,说明一堆从实际生活得出的数据中,以1为首位数字的数的出现机率约为总数的三成,接近期望值1/9的3倍。推广来说,越大的数,以它为首几位的数出现的机率就越低。它可用于检查各种数据是否有造假。

  3. 解释

  4. 一组平均增长的数据开始时,增长得较慢,由最初的数字a增长到另一个数字a + 1起首的数的时间,必然比a + 1起首的数增长到a + 2,需要更多时间,所以出现率就更高了。
    从数数目来说,顺序从1开始数,1,2,3,…,9,从这点终结的话,所有数起首的机会似乎相同,但9之后的两位数10至19,以1起首的数又大大抛离了其他数了。而下一堆9起首的数出现之前,必然会经过一堆以2,3,4,…,8起首的数。若果这样数法有个终结点,以1起首的数的出现率一般都比9大。
    Continue reading