elynx-seq-0.0.1: Handle molecular sequences

Copyright(c) Dominik Schrempf 2018
LicenseGPL-3
Maintainerdominik.schrempf@gmail.com
Stabilityunstable
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

ELynx.Data.Sequence.Sequence

Contents

Description

Creation date: Thu Oct 4 18:54:51 2018.

Synopsis

Types

type SequenceCharacters = Vector Character Source #

The vector of characters of a sequence.

data Sequence Source #

Sequences have a name, a code and hopefully a lot of data.

Instances
Eq Sequence Source # 
Instance details

Defined in ELynx.Data.Sequence.Sequence

Show Sequence Source # 
Instance details

Defined in ELynx.Data.Sequence.Sequence

Lenses

Input

toCharacters :: ByteString -> SequenceCharacters Source #

Convert byte string to sequence characters.

Output

fromCharacters :: SequenceCharacters -> ByteString Source #

Convert sequence characters to byte string.

showSequenceList :: [Sequence] -> ByteString Source #

Show a list of Sequences, untrimmed.

sequenceListHeader :: ByteString Source #

Header printed before Sequence list.

summarizeSequenceList :: [Sequence] -> ByteString Source #

Trim and show a list of Sequences.

Analysis

lengthSequence :: Sequence -> Int Source #

Calculate length of Sequence.

equalLength :: [Sequence] -> Bool Source #

Check if all Sequences have equal length.

longest :: [Sequence] -> Sequence Source #

Find the longest Sequence in a list.

Manipulation

trimSequence :: Int -> Sequence -> Sequence Source #

Trim to given length.

concatenate :: Sequence -> Sequence -> Sequence Source #

Concatenate two sequences. SequenceNames have to match.

concatenateSeqs :: [[Sequence]] -> [Sequence] Source #

Concatenate a list of sequences, see concatenate.

Filtering

filterShorterThan :: Int -> [Sequence] -> [Sequence] Source #

Only take Sequences that are shorter than a given number.

filterLongerThan :: Int -> [Sequence] -> [Sequence] Source #

Only take Sequences that are longer than a given number.