modify-fasta- Modify fasta (and CLIP) files in several optional ways

Safe HaskellNone




replaceChars :: Char -> Text -> Text -> Text Source #

Replace characters in the first string with another in the second string if they are equal to a certain character and they aren't replaced with a gap.

fillInSequence :: Field -> Start -> Char -> FastaSequence -> FastaSequence Source #

Fill in the sequence with corrected nucleotides or amino acids

insertSequence :: Start -> FastaSequence -> FastaSequence -> FastaSequence Source #

Insert a sequence into a reference.

changeField :: Maybe Field -> Text -> FastaSequence -> FastaSequence Source #

Change a field to a match, so a regex "ch.*_" to field 2 of ">abc|brie_cheese_dude" would result in ">abc|cheese_". Useful for getting specific properties from a field

changeAllFields :: FastaSequence -> [(Maybe Int, Text)] -> FastaSequence Source #

Change all fields to their matches based on changeField

getRegionSequence :: Maybe Start -> Maybe Stop -> FastaSequence -> FastaSequence Source #

Get a region of a sequence, 1 indexed

trimFasta :: GeneticUnit -> Maybe Frame -> Maybe Frame -> FastaSequence -> FastaSequence Source #

Trim off extra nucleotides (or amino acids) from a fasta sequence. If inframe and outframe are specified, instead cut off based on those frames.

removeUnknownNucs :: FastaSequence -> FastaSequence Source #

Convert non standard nucleotides to gaps