https://github.com/chrisarg/alien-seqalignment-edlib
Sequence Alignment tool
https://github.com/chrisarg/alien-seqalignment-edlib
bioinformatics bioinformatics-analysis bioinformatics-scripts sequence-alignment sequencing
Last synced: 7 months ago
JSON representation
Sequence Alignment tool
- Host: GitHub
- URL: https://github.com/chrisarg/alien-seqalignment-edlib
- Owner: chrisarg
- License: other
- Created: 2024-03-10T01:04:17.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-14T01:14:30.000Z (over 1 year ago)
- Last Synced: 2025-03-25T11:50:20.988Z (7 months ago)
- Topics: bioinformatics, bioinformatics-analysis, bioinformatics-scripts, sequence-alignment, sequencing
- Language: Perl
- Homepage:
- Size: 43 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
- Changelog: Changes
- License: LICENSE
Awesome Lists containing this project
README
NAME
Alien::SeqAlignment::edlib - find, build and install the edlib libraryVERSION
version 0.10SYNOPSIS
To execute the alignment using the command line tool:use Alien::SeqAlignment::edlib;
use Env qw( @PATH );unshift @PATH, Alien::SeqAlignment::edlib->bin_dir;
system Alien::SeqAlignment::edlib->edlib_aligner, (list of options), , ;DESCRIPTION
This distribution provides edlib so that it can be used by other Perl
distributions that are on CPAN. The source code will be downloaded from
the edlib github repo, and if that fails it will use the location of a
fork but the author of this module. Contrary to other Alien modules,
this one will not test for a prior install of the edlib library, but
will install from source into a private share location for the use by
other modules. This strategy will avoid overwritting prior system
installs of the edlib library, and is guaranteed to use the latest
version of edlib. The build provides the static and shared libraries,
but also the CLI aligner (edlib-aligner, not currently available in
Windows).METHODS
edlib_aligner
Alien::SeqAlignment::edlib->edlib_alignerReturns the command name for running the CLI version of the edlib
aligner Since the command line tool is not built under Windows by the
edlib project make files, this method will return undef under Windows.USAGE
Command line tool
use v5.38;
use Alien::SeqAlignment::edlib;
use Env qw( @PATH );unshift @PATH, Alien::SeqAlignment::edlib->bin_dir;
my $string1 = "ACGACG";
my $string2 = "CCCCCACGTCG";# save sequences
open my $fh, '>', 'seq1.fasta';
say $fh ">Seq1\n$string1";
close $fh;
open my $fh, '>', 'seq2.fasta';
say $fh ">Seq2\n$string2";
close $fh;system Alien::SeqAlignment::edlib->edlib_aligner, '-m', 'HW','-n','0', '-k','-1','-p','-f' ,'NICE','seq1.fasta', 'seq2.fasta';
Output
Using HW alignment mode.
Reading queries...
Read 1 queries, 6 residues total.
Reading target fasta file...
Read target, 11 residues.Comparing queries to target...
Query #0 (6 residues): score = 1
T: ACGTCG (5 - 10)
||| ||
Q: ACGACG (0 - 5)SEE ALSO
* edlibEdlib is a lightweight and superfast C/C++ library for sequence
alignment using the edit (Levenshtein) distance between two or more
biological (usually) sequences. It can calculate the edit distance,
find the optimal aligment path and the coordinates (start/end)
locations. It supports multiple alignment modes such as global (NW),
prefix (SHW) and infix (HW). The library does not handle utf8 and
its primary use is to compute edit distances and alignments over
small (255 characters or fewer) alphabets as they occur in
bioinformatic applications.* Text::Levenshtein::Edlib
An XS library that also wraps around the edlib library and returns
edit distances, as well as alignment paths.* Text::Levenshtein::XS
An XS library that computes edit distances but not alignment paths.
See also its github repository at:
)* Text::LevenshteinXS
Yet another XS implementation of Levenshtein distance over strings
(no alignment path).* Alien
Documentation on the Alien concept itself.
* Alien::Base
The base class for this Alien. The methods in that class allow you
to use the static and the dynamic edlib library in your code.* Alien::Build::Manual::AlienUser
Detailed manual for users of Alien classes.
* Bio::SeqAlignment
A collection of tools and libraries for aligning biological
sequences from within Perl.AUTHOR
Christos ArgyropoulosCOPYRIGHT AND LICENSE
This software is copyright (c) 2023 by Christos Argyropoulos.This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.