Iteratee-based importer. Provides a simple fromFile function that produces both maps in one pass.
- iSpeciesMap :: Monad m => Iteratee [SpeciesTaxonomy] m (Map SpeciesName SpeciesTaxonomy)
- iTaxIdMap :: Monad m => Iteratee [SpeciesTaxonomy] m (Map SpeciesAccession SpeciesTaxonomy)
- eneeSpecies :: Monad m => Enumeratee ByteString [Either String SpeciesTaxonomy] m a
- mkSpecies :: Parser SpeciesTaxonomy
- fromFile :: FilePath -> IO (Map SpeciesName SpeciesTaxonomy, Map SpeciesAccession SpeciesTaxonomy)
Documentation
iSpeciesMap :: Monad m => Iteratee [SpeciesTaxonomy] m (Map SpeciesName SpeciesTaxonomy)Source
Provide name-based lookup as the most-common usage scenario.
TODO there are 9 duplicates in the names, let's find them and see what is going on
iTaxIdMap :: Monad m => Iteratee [SpeciesTaxonomy] m (Map SpeciesAccession SpeciesTaxonomy)Source
And a map based on taxon id
eneeSpecies :: Monad m => Enumeratee ByteString [Either String SpeciesTaxonomy] m aSource
Imports taxonomy data.
mkSpecies :: Parser SpeciesTaxonomySource
Given a ByteString
, create a species entry.
NOTE The taxonomy format is, for each species, a line consisting of: taxid - tab - species name - tab - semicolon separated list of classification names - dot - end of line.
fromFile :: FilePath -> IO (Map SpeciesName SpeciesTaxonomy, Map SpeciesAccession SpeciesTaxonomy)Source
Convenience function: given a taxonomy file, produce both maps simultanously.