Sequence clustering

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In bioinformatics, sequence clustering algorithms attempt to group biological sequences that are somehow related. The sequences can be either of genomic, "transcriptomic" (ESTs) or protein origin. For proteins, homologous sequences are typically grouped into families. For EST data, clustering is important to group sequences originating from the same gene before the ESTs are assembled to reconstruct the original mRNA.

Some clustering algorithms use single-linkage clustering, constructing a transitive closure of sequences with a similarity over a particular threshold. UCLUST[1] and CD-HIT[2] use a greedy algorithm that identifies a representative sequence for each cluster and assigns a new sequence to that cluster if it is sufficiently similar to the representative; if a sequence is not matched then it becomes the representative sequence for a new cluster. The similarity score is often based on sequence alignment. Sequence clustering is often used to make a non-redundant set of representative sequences.

Sequence clusters are often synonymous with (but not identical to) protein families. Determining a representative tertiary structure for each sequence cluster is the aim of many structural genomics initiatives.

Sequence clustering algorithms and packages[edit]

  • Starcode:[3] a fast sequence clustering algorithm based on exact all-pairs search.[4]
  • OrthoFinder:[5] a fast, scalable and accurate method for clustering proteins into gene families (orthogroups)[6]
  • CD-HIT[2]
  • Linclust: clustering protein sequences in linear time[7]
  • MMseqs: software suite for fast and deep clustering of large protein sequence sets [9]
  • TribeMCL: a method for clustering proteins into related groups[10]
  • BAG: a graph theoretic sequence clustering algorithm[11]
  • JESAM:[12] Open source parallel scalable DNA alignment engine with optional clustering software component
  • UICluster:[13] Parallel Clustering of EST (Gene) Sequences
  • BLASTClust single-linkage clustering with BLAST[14]
  • (Multi)netclust:[15] fast and memory-efficient detection of connected clusters in (multi-parametric) data networks[16]
  • Clusterer:[17] extendable java application for sequence grouping and cluster analyses
  • PATDB: a program for rapidly identifying perfect substrings
  • nrdb:[18] a program for merging trivially redundant (identical) sequences
  • CluSTr:[19] A single-linkage protein sequence clustering database from Smith-Waterman sequence similarities; covers over 7 mln sequences including UniProt and IPI
  • ICAtools[20] - original (ancient) DNA clustering package with many algorithms useful for artifact discovery or EST clustering
  • Virus Orthologous Clusters:[21] A viral protein sequence clustering database; contains all predicted genes from eleven virus families organized into ortholog groups by BLASTP similarity
  • Skipredudant EMBOSS tool[22] to remove redundant sequences from a set

Non-redundant sequence databases[edit]

  • PISCES: A Protein Sequence Culling Server[23]
  • RDB90[8]
  • UniRef: A non-redundant UniProt sequence database[24]
  • Uniclust: A clustered UniProtKB sequences at the level of 90%, 50% and 30% pairwise sequence identity.[25]

See also[edit]


  1. ^ a b "USEARCH". 
  2. ^ a b "CD-HIT: a ultra-fast method for clustering protein and nucleotide sequences, with many new applications in next generation sequencing (NGS) data". 
  3. ^ "Starcode repository". 
  4. ^ Zorita E; Cuscó P; Filion GJ. (Jun 2015). "Starcode: sequence clustering based on all-pairs search". Bioinformatics. 31 (12): 1913–1919. PMC 4765884Freely accessible. PMID 25638815. doi:10.1093/bioinformatics/btv053. 
  5. ^ "OrthoFinder". Steve Kelly Lab. 
  6. ^ Emms DM; Kelly S. (Aug 2015). "OrthoFinder: solving fundamental biases in whole genome comparisons dramatically improves orthogroup inference accuracy.". Genome Biology. 16 (157). PMC 4531804Freely accessible. PMID 26243257. doi:10.1186/s13059-015-0721-2. 
  7. ^ Steinegger, Martin; Soeding, Johannes (2017-05-25). "Linclust: clustering billions of protein sequences per day on a single server". bioRxiv 104034Freely accessible. 
  8. ^ a b Holm L1, Sander C. (Jun 1998). "Removing near-neighbour redundancy from large protein sequence collections.". Bioinformatics. 14 (5): 423–9. PMID 9682055. doi:10.1093/bioinformatics/14.5.423. 
  9. ^ Hauser M.; Steinegger M.; Söding J. (Jan 2016). "MMseqs software suite for fast and deep clustering and searching of large protein sequence sets". Bioinformatics. 32 (9): 1323–1330. PMID 26743509. doi:10.1093/bioinformatics/btw006. 
  10. ^ Enright AJ; Van Dongen S; Ouzounis CA. (Apr 2002). "An efficient algorithm for large-scale detection of protein families.". Nucleic Acids Res. 30 (7): 1575–84. PMC 101833Freely accessible. PMID 11917018. doi:10.1093/nar/30.7.1575. 
  11. ^
  12. ^ "Bioinformatics Paper: JESAM: CORBA software components for EST alignments and clusters". 
  13. ^
  14. ^ "NCBI News: Spring 2004-BLASTLab". 
  15. ^ "WUR Multi-netclust web server". 
  16. ^ Kuzniar, A., Dhir, S., Nijveen, H., Pongor, S. and Leunissen, J. A. M. (Oct 2010). "Multi-netclust: an efficient tool for finding connected clusters in multi-parametric networks". Bioinformatics. 26 (19): 2482–2483. PMC 2944197Freely accessible. PMID 20679333. doi:10.1093/bioinformatics/btq435. 
  17. ^ "Clusterer: extendable java application for sequence grouping and cluster analyses". 
  18. ^
  19. ^
  20. ^ "Introduction to the ICAtools". 
  21. ^ "VOCS - Viral Bioinformatics Resource Center". 
  22. ^ "EMBOSS: skipredundant". 
  23. ^ "Dunbrack Lab". 
  24. ^ "About UniProt". 
  25. ^ Mirdita M; von den Drisch L.; Galiez C.; Soeding J.; Steinegger M. (Nov 2016). "Uniclust databases of clustered and deeply annotated protein sequences and alignments". Nucl Acids Res. 45 (D1): D170–D176. doi:10.1093/nar/gkw1081.