CN102467616A - 一种用后缀数组加速大规模蛋白质鉴定的方法及其系统 - Google Patents
一种用后缀数组加速大规模蛋白质鉴定的方法及其系统 Download PDFInfo
- Publication number
- CN102467616A CN102467616A CN2010105464752A CN201010546475A CN102467616A CN 102467616 A CN102467616 A CN 102467616A CN 2010105464752 A CN2010105464752 A CN 2010105464752A CN 201010546475 A CN201010546475 A CN 201010546475A CN 102467616 A CN102467616 A CN 102467616A
- Authority
- CN
- China
- Prior art keywords
- suffix
- enzyme
- common prefix
- cutting
- protein sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
Abstract
本发明公开了一种用后缀数组加速大规模蛋白质鉴定的方法及其系统,其中该方法包括:步骤1,根据数据库中的蛋白质序列创建相应的后缀数组,并根据所述后缀数组推断与所述蛋白质序列相应的最长公共前缀;步骤2,基于最长公共前缀和酶切规则,对所述蛋白质序列进行在线酶切,得到非冗余肽;步骤3,根据串联质谱、所述非冗余肽进行肽谱匹配鉴定,并利用鉴定到的肽推断对应的蛋白质序列。本发明达到了去掉冗余的肽和快速查询的目的,提高了蛋白质的鉴定速度,同时,这种方法无损精度,所需要的时间和空间都很少,并且使用比较方便。
Description
技术领域
本发明涉及蛋白质鉴定技术,特别是涉及一种用后缀数组(SA,SuffixArray)加速大规模蛋白质鉴定的方法及其系统。
背景技术
基于串联质谱的蛋白质鉴定已经成为蛋白质组学的主流技术,参考文献1《Aebersold,R.and Mann,M.Mass spectrometry-based proteomics,Nature,2003,422:198-207》中有较为详细的说明。而数据库搜索已经成为鉴定串联质谱数据的主流技术,参考文献2《Eng,J.K.,McCormack,A.L.and Yates,J.R.An approachto correlate tandem mass spectral data of peptides with amino acid sequences in aprotein database.J Am Soc Mass Spectrom,1994,5:976-989》;参考文献3《Perkins,D.N.,Pappin,D.J.,Creasy,D.M.and Cottrell,J.S.Probability-basedprotein identification by searching sequence databases using mass spectrometrydata.Electrophoresis,1999,20:3551-3567》;参考文献4《Field,H.I.,D.andBeavis,R.C.RADARS,a bioinformatics solution that automates proteome massspectral analysis,optimises protein identification,and archives data in a relationaldatabase.Proteomics,2002,2:36-47》有较为详细的说明。
数据库搜索技术的基本步骤如下:将数据库中的蛋白质序列按照生物学的酶切规则模拟酶切为许多较短的序列(称为肽),并且计算出肽的质量。鉴定时,设定一个质量误差范围,串联质谱(简称为谱)与这个质量误差范围之内的肽,都进行匹配打分。对每个谱,选取得分最高的肽,再根据一定的规则评价这个肽的正确性。如果正确,再根据肽找到相应的蛋白质。
在数据库中,20种氨基酸分别由20种英文字母表示。蛋白质序列是由氨基酸序列组成,在数据库中表示为英文字母序列,如“MLPYMDQVLRAFYQSTK”这样的序列。所谓酶切则是将比较长的蛋白质序列切成较短的序列(称为肽),这样才能让质谱仪检测到。酶切又分为不同的情况,如非特异性酶切,只要求肽的长度和质量在一定范围之内,蛋白质序列的任何一段都是合法的肽。而特异性酶切,则对肽的两端或前后有一定的限制,如C端的Trypsin酶切,肽序列只有它N端(在序列中为左端)前一个字母为‘K’或‘R’,并且C端(在序列中为右端)的第一个字母也为‘K’或‘R’时,这个肽才是合法的肽,如蛋白质序列“MLPYMDQVLRAFYQSTK”中。对N端的Trypsin酶切,肽序列只有它N端第一个字母为‘K’或‘R’,并且C端的后一个字母也为‘K’或‘R’时,这个肽才是合法的肽。非特异酶切介于特异与半特异之间,它对肽的一端有限制,而另一端没有限制。
目前,影响这种蛋白质数据库搜索进一步发展的主要问题之一就是速度问题,因为数据库在不断增大,半特异,非特异酶切,翻译后修饰导致候选肽急剧增加。为了提高速度,大部分引擎和软件都通过重组数据库来提高速度。因为在蛋白质酶切到肽段的过程中,产生了许多冗余肽。在较大的数据库中,如IPI-Human,肽的冗余比甚至达到了50%。同时,随着数据库的不断增大,快速从蛋白质数据库中提取肽段,也成为提高速度的一个方式。
许多搜索引擎都采用了重组数据库的方法来提高鉴定速度,在这其中,应用最为广泛的是倒排索引。但是,倒排索引消耗了太多的时间和空间来创建索引,同时,索引的在线使用也不方便。本发明提出了一种使用后缀数组来重组蛋白质序列数据库的方法,以达到去掉冗余的肽和快速查询的目的,从而提高蛋白质的鉴定。同时,这种方法所需要的时间和空间都很少,并且使用比较方便。
发明内容
本发明的目的在于提供一种用后缀数组加速大规模蛋白质鉴定的方法及其系统,用于解决目前大规模蛋白质鉴定中基于串联质谱的数据库搜索速度过慢,以及广泛应用的倒排索引创建需要的时间和空间太大并且使用不方便的问题。
为了实现上述目的,本发明提供一种用后缀数组加速大规模蛋白质鉴定的方法,其特征在于,包括:
步骤1,根据数据库中的蛋白质序列创建相应的后缀数组,并根据所述后缀数组推断与所述蛋白质序列相应的最长公共前缀;
步骤2,基于最长公共前缀和酶切规则,对所述蛋白质序列进行在线酶切,得到非冗余肽;
步骤3,根据串联质谱、所述非冗余肽进行肽谱匹配鉴定,并利用鉴定到的肽推断对应的蛋白质序列。
所述的用后缀数组加速大规模蛋白质鉴定的方法,其中,
所述步骤1中,还包括:
根据酶切的类型确定是否需要对所述最长公共前缀的值进行调整,当酶切的类型为特异性酶切时,则需要对所述最长公共前缀的值进行调整。
所述的用后缀数组加速大规模蛋白质鉴定的方法,其中,
所述步骤1中,还包括:
将所述最长公共前缀的值调整为符合特异性酶切规则的后缀间的最长公共前缀的值,并把符合特异性酶切规则的后缀作为特殊后缀。
所述的用后缀数组加速大规模蛋白质鉴定的方法,其中,
所述步骤1中,当酶切的类型为C端特异性Trypsin酶切时,还包括:
当所述后缀的前一个字符是K或R,或所述后缀为蛋白质序列本身时,所述后缀为特殊后缀,将所述后缀间的最长公共前缀的值调整为特殊后缀间的最长公共前缀的值。
所述的用后缀数组加速大规模蛋白质鉴定的方法,其中,
对每一个所述后缀数组的后缀,将所述最长公共前缀的值调整为所述特殊后缀之间最长公共前缀的值。
所述的用后缀数组加速大规模蛋白质鉴定的方法,其中,
所述步骤2中,当酶切的类型为N端特异性Trypsin酶切时,还包括:
反转所述蛋白质序列,按照C端特异性酶切的方式产生合法的子串,再反转该子串得到合法的肽。
所述的用后缀数组加速大规模蛋白质鉴定的方法,其中,
所述步骤1中,当酶切的类型为非特异性酶切时,还包括:
对于每一个i∈[0,n),后缀Suffix[i]的部分前缀作为整个输入的字符串的子串,该部分前缀是从长度区间为(LCP[i]+1)到整个后缀Suffix[i]长度的前缀;
其中,n为数据库中的蛋白质序列的长度,i为数据库中蛋白质序列第i个位置,Suffix[i]为蛋白质序列第i个后缀,LCP[i]为Suffix[i]对应的最长公共前缀。
为了实现上述目的,本发明提供一种用后缀数组加速大规模蛋白质鉴定的系统,其特征在于,包括:
最长公共前缀模块,用于根据数据库的蛋白质序列创建相应的后缀数组,并根据所述后缀数组推断与所述蛋白质序列相应的最长公共前缀;
非冗余肽获取模块,连接所述最长公共前缀模块,用于基于所述最长公共前缀和酶切规则,对所述蛋白质序列进行在线酶切,得到非冗余肽;
蛋白质序列推断模块,连接所述非冗余肽获取模块,用于根据串联质谱、所述非冗余肽进行肽谱匹配鉴定,并利用鉴定到的肽推断对应的蛋白质序列。
所述的用后缀数组加速大规模蛋白质鉴定的系统,其中,
所述最长公共前缀模块,还用于根据酶切的类型确定是否需要对所述最长公共前缀的值进行调整,如酶切的类型为特异性酶切时,则需要对所述最长公共前缀的值进行调整,并将所述最长公共前缀的值调整为符合特异性酶切规则的后缀间的最长公共前缀的值,并把符合特异性酶切规则的后缀作为特殊后缀。
所述的用后缀数组加速大规模蛋白质鉴定的系统,其中,
所述最长公共前缀模块,包括:
后缀数组创建模块,用于为所述数据库中的蛋白质序列创建所述后缀数组;
LCP推导模块,连接所述后缀数组创建模块,用于根据所述后缀数组推导出所述最长公共前缀。
所述的用后缀数组加速大规模蛋白质鉴定的系统,其中,
所述最长公共前缀模块,还包括:
LCP调整模块,连接所述LCP推导模块,用于根据酶切的类型对所述最长公共前缀进行调整。
所述的用后缀数组加速大规模蛋白质鉴定的系统,其中,
所述LCP调整模块,还用于当酶切的类型是特异性酶切时,将所述最长公共前缀的值调整为符合特异性酶切规则的后缀间的最长公共前缀的值。
所述的用后缀数组加速大规模蛋白质鉴定的系统,其中,
所述LCP调整模块,还用于当酶切的类型为C端特异性Trypsin酶切时,且当所述后缀的前一个字符是K或R,或所述后缀为蛋白质序列本身时,将所述后缀作为特殊后缀,并将所述后缀间的最长公共前缀的值调整为特殊后缀间的最长公共前缀的值。
所述的用后缀数组加速大规模蛋白质鉴定的系统,其中,
所述非冗余肽获取模块,还用于当酶切的类型为N端特异性Trypsin酶切时,反转所述蛋白质序列,按照C端特异性酶切的方式产生合法的子串,再反转该子串得到合法的肽,并由所述蛋白质序列推断模块根据该合法的肽进行肽谱匹配。
与现有技术相比,本发明的有益技术效果在于:
本发明提出了一种使用后缀数组来重组蛋白质序列数据库的方法,解决了目前大规模蛋白质鉴定中基于串联质谱的数据库搜索速度过慢,而广泛应用的倒排索引创建需要的时间和空间太大并且使用不方便的问题,达到了去掉冗余的肽和快速查询的目的,提高了蛋白质的鉴定速度。同时,这种方法所需要的时间和空间都很少,并且使用比较方便,具体是:
1.去掉了蛋白质数据库中的所有重复肽,减少了肽和谱进行比较和打分的次数,从而减少了计算的时间。在如IPI-Human数据库等大数据库上,它能够减少50%的计算时间;
2.对精度没有任何损失,虽然特异性酶切导致后缀数组算法中数据结构数组最长公共前缀(Longest Common Prefix,LCP)不能直接使用,但是经过改进后,本发明中的方法还是能生成所有非冗余子串;
3.创建后缀数组所需要额外的时间和空间相对其他算法比较小;
4.使用比较方便,后缀数组的创建只依赖于酶和数据库,不依赖于如遗漏位点数,肽段长度等其它信息。
附图说明
图1是本发明的用后缀数组加速大规模蛋白质鉴定的方法流程图;
图2是采用本发明中算法产生所有非冗余子串的示意图,蛋白质序列是{MSQVQVQV$},LCP的值是{0,0,4,3,2,1,0,0};
图3是本发明的用后缀数组加速大规模蛋白质鉴定的系统结构图。
具体实施方式
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
如图1所示,是本发明的用后缀数组加速大规模蛋白质鉴定的方法流程图,该方法主要应用于大规模蛋白质鉴定中基于串联质谱的数据库搜索方法。该方法流程的具体步骤包括:
步骤101,根据数据库中的蛋白质序列创建相应的后缀数组SA,并根据SA推断与蛋白质序列相应的最长公共前缀LCP;
步骤102,基于LCP和酶切规则,将蛋白质序列进行在线酶切,得到所有非冗余肽;
步骤103,根据串联质谱、非冗余肽进行肽谱匹配鉴定,并利用鉴定到的肽推断对应的蛋白质序列。
在本发明的一实施例中,步骤101具体为:
步骤1-1,为数据库中蛋白质序列创建后缀数组SA;创建后缀数组的算法有很多,本发明使用一些实际运行比较快,同时内存消耗比较少的算法,以下以世界上第一次提出后缀数组算法的论文为例,介绍后缀数组的创建算法。
在介绍之前,首先介绍一些基本概念:
后缀数组SA是1990年提出的,它是后缀树的一种替代方法,但是后缀数组SA的空间效率更高。一个字符串,如T=T[0...n)=t0t1...tn-1是后缀数组SA的输入。在本发明中,这个输入就是指数据库中的蛋白质序列,并用字符‘$’将蛋白质序列区分开。
对任意下标i∈[0,n),后缀Suffix[i]表示T[i,n)=titi+1...tn-1,后缀数组SA[0...n)表示这些排好序的后缀。当且仅当SA[j]=i时,按字母序字符串T的所有后缀中第j名的后缀是Suffix[i]。数组Rank[0...n)表示与SA相反的意思,即当且仅当SA[j]=i时,Rank[i]=j,这两个等式都表示Suffix[i]按照字母序是字符串T的所有后缀的第j名。
后缀数组的创建实际上是将字符串的所有后缀进行排序,得到SA。这个排序过程需要进行ceil(log2(n))步。在第一步,所有后缀根据它们的第一字符进行桶排序。接下来,将所有后缀根据前面两个字符进行排序,以此类推到第ceil(log2(n))步。简单来说,这个思路就是按长度为1,2,4,8...n,对后缀进行排序。根据数学归纳法来说明这个过程。在第一步,根据后缀们的第一个字符进行桶排序,这些后缀被分进了m1个桶,每个桶保存第一个字符相等的后缀。假设到了第H步,所有的后缀被分进了mH个桶,每个桶保存了前2H个字符相等的后缀们。接下来说明怎么将后缀们根据前2H+1个字符排序。
假设后缀Suffix[i]和Suffix[j]在第H步后属于同一个桶,需要对Suffix[i]和Suffix[j]比较前2H个字符后面的2H个字符。实际上,这后面的2H个字符就是后缀Suffix[i+2H]和Suffix[j+2H]的前2H个字符。而根据假设,所有后缀的前2H个字符的关系是已知的,那么Suffix[i+2H]和Suffix[j+2H]的前2H个字符之间的关系也是可以直接得到的。所以Suffix[i]和Suffix[j]的关系可以通过Suffix[i+2H]和Suffix[j+2H]的关系直接得到。
更进一步的说明及证明可以参考文献《Manber U,Myers G:Suffix arrays:Anew method for on-line string searches.In.Society for Industrial and AppliedMathematics Philadelphia,PA,USA;1990:319-327.》。
步骤1-2,在SA的基础上推导出最长公共前缀LCP。LCP表示按字母序相邻两个后缀间的最长公共前缀的长度。对任意i∈[0,n),LCP[i]表示Suffix[SA[Rank[i]-1]]和Suffix[i]这两个相邻后缀间的最长公共前缀LCP的长度。定义lcp(y,z)为两个字符串y和z的最长公共前缀的长度,那么LCP[i]=lcp(T[SA[Rank[i]-1]...n),T[i...n)),定义LCP[SA[0]]的值为0。
LCP推导算法比较多,下面以第一个时间复杂度为O(n)的算法介绍LCP的创建。
输入:蛋白质序列字符串T,字符串T的长度是n,前面定义的数组LCP,
SA,Rank;
输出:经过调整的数组LCP。
For(i=0;i<n;++i)
{
If(n-1==Rank[t])LCP[t]=0;
Else
{
If(t==0||LCP[t-1]<=1)j=0;
Elsej=LCP[t-1]-1;
For(tmp=SA[Rank[t]+1];T[t+j]==T[tmp+j];++j);
LCP[t]=j;
}
}
更进一步的说明及证明可以参考文献《Kasai T,Lee G,Arimura H,ArikawaS,Park K:Linear-time longest-common-prefix computation in suffix arrays and itsapplications.Lecture Notes in Computer Science 2001,2089:181-192.》。
在本发明的一实施例中,步骤101中,还包括:
步骤1-3,根据酶切的类型确定是否需要对LCP的值进行调整,当酶切的类型是特异性酶切时,则需要对LCP的值做调整,将LCP的值调整为符合特异性酶切规则的特殊后缀间的LCP的值。
对于特异性酶切,并不是每个后缀都能产生子串。例如,对于C端的Trypsin酶切,只有当后缀的前一个字符是‘K’或‘R’,或者后缀就是蛋白质序列本身的时候,这个后缀的前缀才可能是合法的。本发明定义这种能够产生合法子串的后缀为特殊后缀(简称为SS,Special Suffix),所以LCP的值需要调整为特殊后缀之间最长公共前缀的值。使用前面定义的相关概念,根据以下公式得到LCP的值:
具体的证明在参考文献5《Manber U,Myers G:Suffix arrays:A new methodfor on-line string searches.In.Society for Industrial and Applied MathematicsPhiladelphia,PA,USA;1990:319-327》中有较为详细的说明。
所以根据前面的定义,这个调整过程如下所示:
输入:蛋白质序列字符串T,字符串T的长度是n,前面定义的数组LCP,
SA,Rank;
输出:经过调整的数组LCP。
For(i=0;i<n;++i)
{
If Suffix[i]is in SS
{
For(k=Rank[i]-1;k>0;--k)
{
If Suffix[SA[k]]is in SS
break
Else
{
If LCP[SA[k]]<LCP[i]
LCP[i]=LCP[SA[k]]
}
}
}
}
在本发明的一实施例中,步骤102分为两种情况:
情况2-1:对于非特异性酶切,将蛋白质序列进行在线酶切;
情况2-2:对于特异性酶切,将蛋白质序列进行在线酶切。
情况2-1,对于非特异性酶切,因为数据库中的蛋白质序列都是用字符串表示的,所以这个问题可以看成是从一个原字符串生成所有的非冗余子串。这个问题的具体处理就是,对于每一个i∈[0,n),后缀Suffix[i]的部分前缀可以作为整个输入的字符串T的子串,这部分前缀是从长度为(LCP[i]+1)到整个后缀Suffix[i]长度的前缀。具体如下所示:
输入:蛋白质序列字符串T,字符串T的长度是n,最长公共前缀数组LCP;
输出:所有的非冗余子串subStrings。
For i=0:(n-1)
For length=(LCP[i]+1):(n-i)
subSrings.push_back(T[i,i+length))
End
End
一个示范例子如图2所示。
情况2-2,模型与情况2-1一样,但是有三点需要注意:
1、对于那些不是特殊后缀的后缀,不生成任何子串,直接忽略;当且仅当后缀为特殊后缀时,才生成合法的子串。
2、在基于LCP做在线酶切时,需要使用在步骤101中调整过的LCP。
3、对于C端的特异性酶切,基于情况2-1的算法从前往后生成非冗余子序列即可。对于N端的特异性酶切,把蛋白质序列反转过来,按照C端特异性酶切的方式产生合法的子串,再将子串反转过来,得到合法的肽。
如图3所示,是本发明的用后缀数组加速大规模蛋白质鉴定的系统结构图。该系统300包括:
最长公共前缀模块10,用于根据数据库的蛋白质序列创建相应的后缀数组SA,再根据后缀数组SA推断其相应的最长公共前缀LCP,还进一步根据酶切的类型确定是否对LCP的值进行调整;
非冗余肽获取模块20,连接最长公共前缀模块10,用于基于LCP和酶切规则,将蛋白质序列进行在线酶切,得到所有非冗余肽;
蛋白质序列推断模块30,连接非冗余肽获取模块20,用于根据串联质谱、非冗余肽进行肽谱匹配鉴定,并利用鉴定到的肽推断对应的蛋白质序列。
在本发明的一实施例中,最长公共前缀模块10包括:
后缀数组创建模块110,用于为数据库中的蛋白质序列创建后缀数组SA,具体创建方式见上述蛋白质鉴定的方法中的描述;
LCP推导模块120,连接后缀数组创建模块110,用于在后缀数组SA的基础上推导出LCP,具体推导方式采用上述蛋白质鉴定的方法中的描述。
在本发明的一实施例中,最长公共前缀模块10还包括:
LCP调整模块130,连接LCP推导模块120,用于根据酶切的类型对推导出的LCP进行调整:
当酶切的类型是特异性酶切时,LCP调整模块130需要对LCP的值做调整,将LCP的值调整为符合特异性酶切规则的后缀间的LCP的值。
LCP调整模块130,还用于当酶切的类型为C端特异性Trypsin酶切时,当后缀的前一个字符是K或R,或后缀为蛋白质序列本身时,后缀为特殊后缀,将后缀间的LCP的值调整为特殊后缀间的最长公共前缀的值。
LCP调整模块130,还用于对每一个后缀数组的后缀,将LCP的值调整为特殊后缀之间最长公共前缀的值。
非冗余肽获取模块20,还用于当酶切的类型为N端特异性Trypsin酶切时,反转蛋白质序列,按照C端特异性酶切的方式产生合法的子串,再反转该子串得到合法的肽,并由蛋白质序列推断模块30根据该合法的肽进行肽谱匹配。
非冗余肽获取模块20,还用于当酶切的类型为非特异性酶切时,对于每一个i∈[0,n),将后缀Suffix[i]的部分前缀作为整个输入的字符串的子串,这部分前缀是从长度区间为(LCP[i]+1)到整个后缀Suffix[i]长度的前缀;
其中,n为数据库中的蛋白质序列的长度,i为数据库中蛋白质序列第i个位置,Suffix[i]为蛋白质序列第i个后缀,LCP[i]为Suffix[i]对应的最长公共前缀。
本发明解决了目前大规模蛋白质鉴定中基于串联质谱的数据库搜索速度过慢,而广泛应用的倒排索引创建需要的时间和空间太大并且使用不方便的问题,提出了一种基于后缀数组的方法及其系统,从而达到以较少的时间和空间作为预计算,提高鉴定速度的目的。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (14)
1.一种用后缀数组加速大规模蛋白质鉴定的方法,其特征在于,包括:
步骤1,根据数据库中的蛋白质序列创建相应的后缀数组,并根据所述后缀数组推断与所述蛋白质序列相应的最长公共前缀;
步骤2,基于最长公共前缀和酶切规则,对所述蛋白质序列进行在线酶切,得到非冗余肽;
步骤3,根据串联质谱、所述非冗余肽进行肽谱匹配鉴定,并利用鉴定到的肽推断对应的蛋白质序列。
2.根据权利要求1所述的用后缀数组加速大规模蛋白质鉴定的方法,其特征在于,
所述步骤1中,还包括:
根据酶切的类型确定是否需要对所述最长公共前缀的值进行调整,当酶切的类型为特异性酶切时,则需要对所述最长公共前缀的值进行调整。
3.根据权利要求2所述的用后缀数组加速大规模蛋白质鉴定的方法,其特征在于,
所述步骤1中,还包括:
将所述最长公共前缀的值调整为符合特异性酶切规则的后缀间的最长公共前缀的值,并把符合特异性酶切规则的后缀作为特殊后缀。
4.根据权利要求2或3所述的用后缀数组加速大规模蛋白质鉴定的方法,其特征在于,
所述步骤1中,当酶切的类型为C端特异性Trypsin酶切时,还包括:
当所述后缀的前一个字符是K或R,或所述后缀为蛋白质序列本身时,所述后缀为特殊后缀,将所述后缀间的最长公共前缀的值调整为特殊后缀间的最长公共前缀的值。
5.根据权利要求3所述的用后缀数组加速大规模蛋白质鉴定的方法,其特征在于,
对每一个所述后缀数组的后缀,将所述最长公共前缀的值调整为所述特殊后缀之间最长公共前缀的值。
6.根据权利要求4所述的用后缀数组加速大规模蛋白质鉴定的方法,其特征在于,
所述步骤2中,当酶切的类型为N端特异性Trypsin酶切时,还包括:
反转所述蛋白质序列,按照C端特异性酶切的方式产生合法的子串,再反转该子串得到合法的肽。
7.根据权利要求2、3、5或6所述的用后缀数组加速大规模蛋白质鉴定的方法,其特征在于,
所述步骤1中,当酶切的类型为非特异性酶切时,还包括:
对于每一个i∈[0,n),后缀Suffix[i]的部分前缀作为整个输入的字符串的子串,该部分前缀是从长度区间为(LCP[i]+1)到整个后缀Suffix[i]长度的前缀;
其中,n为数据库中的蛋白质序列的长度,i为数据库中蛋白质序列第i个位置,Suffix[i]为蛋白质序列第i个后缀,LCP[i]为Suffix[i]对应的最长公共前缀。
8.一种用后缀数组加速大规模蛋白质鉴定的系统,其特征在于,包括:
最长公共前缀模块,用于根据数据库的蛋白质序列创建相应的后缀数组,并根据所述后缀数组推断与所述蛋白质序列相应的最长公共前缀;
非冗余肽获取模块,连接所述最长公共前缀模块,用于基于所述最长公共前缀和酶切规则,对所述蛋白质序列进行在线酶切,得到非冗余肽;
蛋白质序列推断模块,连接所述非冗余肽获取模块,用于根据串联质谱、所述非冗余肽进行肽谱匹配鉴定,并利用鉴定到的肽推断对应的蛋白质序列。
9.根据权利要求8所述的用后缀数组加速大规模蛋白质鉴定的系统,其特征在于,
所述最长公共前缀模块,还用于根据酶切的类型确定是否需要对所述最长公共前缀的值进行调整,如酶切的类型为特异性酶切时,则需要对所述最长公共前缀的值进行调整,并将所述最长公共前缀的值调整为符合特异性酶切规则的后缀间的最长公共前缀的值,并把符合特异性酶切规则的后缀作为特殊后缀。
10.根据权利要求8或9所述的用后缀数组加速大规模蛋白质鉴定的系统,其特征在于,
所述最长公共前缀模块,包括:
后缀数组创建模块,用于为所述数据库中的蛋白质序列创建所述后缀数组;
LCP推导模块,连接所述后缀数组创建模块,用于根据所述后缀数组推导出所述最长公共前缀。
11.根据权利要求10所述的用后缀数组加速大规模蛋白质鉴定的系统,其特征在于,
所述最长公共前缀模块,还包括:
LCP调整模块,连接所述LCP推导模块,用于根据酶切的类型对所述最长公共前缀进行调整。
12.根据权利要求11所述的用后缀数组加速大规模蛋白质鉴定的系统,其特征在于,
所述LCP调整模块,还用于当酶切的类型是特异性酶切时,将所述最长公共前缀的值调整为符合特异性酶切规则的后缀间的最长公共前缀的值。
13.根据权利要求12所述的用后缀数组加速大规模蛋白质鉴定的系统,其特征在于,
所述LCP调整模块,还用于当酶切的类型为C端特异性Trypsin酶切时,且当所述后缀的前一个字符是K或R,或所述后缀为蛋白质序列本身时,将所述后缀作为特殊后缀,并将所述后缀间的最长公共前缀的值调整为特殊后缀间的最长公共前缀的值。
14.根据权利要求13所述的用后缀数组加速大规模蛋白质鉴定的系统,其特征在于,
所述非冗余肽获取模块,还用于当酶切的类型为N端特异性Trypsin酶切时,反转所述蛋白质序列,按照C端特异性酶切的方式产生合法的子串,再反转该子串得到合法的肽,并由所述蛋白质序列推断模块根据该合法的肽进行肽谱匹配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010546475.2A CN102467616B (zh) | 2010-11-15 | 2010-11-15 | 一种用后缀数组加速大规模蛋白质鉴定的方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010546475.2A CN102467616B (zh) | 2010-11-15 | 2010-11-15 | 一种用后缀数组加速大规模蛋白质鉴定的方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102467616A true CN102467616A (zh) | 2012-05-23 |
CN102467616B CN102467616B (zh) | 2014-07-30 |
Family
ID=46071246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010546475.2A Active CN102467616B (zh) | 2010-11-15 | 2010-11-15 | 一种用后缀数组加速大规模蛋白质鉴定的方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102467616B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107169315A (zh) * | 2017-03-27 | 2017-09-15 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种海量dna数据的传输方法及系统 |
CN111445952A (zh) * | 2020-03-25 | 2020-07-24 | 山东大学 | 超长基因序列的相似性快速比对方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050064408A1 (en) * | 2001-06-13 | 2005-03-24 | Petteri Sevon | Method for gene mapping from chromosome and phenotype data |
-
2010
- 2010-11-15 CN CN201010546475.2A patent/CN102467616B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050064408A1 (en) * | 2001-06-13 | 2005-03-24 | Petteri Sevon | Method for gene mapping from chromosome and phenotype data |
Non-Patent Citations (3)
Title |
---|
喻钧 等: "基于后缀树思想构造Web生物数据搜索的数据模型", 《西安工程科技学院学报》 * |
孙瑞祥 等: "基于质谱技术的计算蛋白质组学研究", 《中国科学 E辑 信息科学》 * |
邵明芝 等: "基于串联质谱的快速肽段鉴定算法", 《计算机工程》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107169315A (zh) * | 2017-03-27 | 2017-09-15 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种海量dna数据的传输方法及系统 |
CN107169315B (zh) * | 2017-03-27 | 2020-08-04 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种海量dna数据的传输方法及系统 |
CN111445952A (zh) * | 2020-03-25 | 2020-07-24 | 山东大学 | 超长基因序列的相似性快速比对方法及系统 |
CN111445952B (zh) * | 2020-03-25 | 2024-01-26 | 山东大学 | 超长基因序列的相似性快速比对方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102467616B (zh) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Vingron et al. | A fast and sensitive multiple sequence alignment algorithm | |
Stranneheim et al. | Classification of DNA sequences using Bloom filters | |
Zhang et al. | On the editing distance between undirected acyclic graphs and related problems | |
Zhao et al. | Exploratory predicting protein folding model with random forest and hybrid features | |
Sagot et al. | A double combinatorial approach to discovering patterns in biological sequences | |
Kumar et al. | Fast and memory efficient approach for mapping NGS reads to a reference genome | |
CN103617203B (zh) | 基于查询驱动的蛋白质-配体绑定位点预测方法 | |
CN101714187B (zh) | 一种规模化蛋白质鉴定中的索引加速方法及相应的系统 | |
Knudsen | Optimal multiple parsimony alignment with affine gap cost using a phylogenetic tree | |
Ho et al. | LISA: towards learned DNA sequence search | |
CN102467616B (zh) | 一种用后缀数组加速大规模蛋白质鉴定的方法及其系统 | |
Huang et al. | Fast algorithms for finding the common subsequence of multiple sequences | |
Eppstein et al. | Sparse dynamic programming | |
CN102841988B (zh) | 一种对核酸序列信息进行匹配的系统和方法 | |
CN108388772A (zh) | 一种利用文本比对分析高通量测序基因表达水平的方法 | |
Björklund et al. | Approximate counting of k-paths: Deterministic and in polynomial space | |
CN112632264A (zh) | 智能问答方法、装置、电子设备及存储介质 | |
CN106709273A (zh) | 基于微藻蛋白质特征序列标签匹配的蛋白质快速检测方法及系统 | |
Tang et al. | Constrained multiple sequence alignment tool development and its application to RNase family alignment | |
Flouri et al. | GapMis: a tool for pairwise sequence alignment with a single gap | |
Pevzner et al. | A fast filtration algorithm for the substring matching problem | |
Matsuoka et al. | Factorizing a string into squares in linear time | |
Jayapriya et al. | Aligning two molecular sequences using genetic operators in grey wolf optimiser technique | |
Krusche et al. | Computing alignment plots efficiently | |
Naznin et al. | Iterative progressive alignment method (IPAM) for multiple sequence alignment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |